C.S.M.P. Digest             Mon, 07 Oct 96       Volume 4 : Issue 7
 
Today's Topics:
 
        **** ANSI C Array HELP ****
        ANNOUNCE: AGMenu 1.0 final release
        Apple Events on a PPC
        Application Merge
        Baud rate constants for serial driver
        Extended on PPC???
        Folder selection madness
        Game: Feathers and Space? First Mac Game?
        Get a font list
        GetKeys() KeyMap Structure (0-1) Re: How to decode GetKeys(KeyMap)?
        Help on JDBC
        Help with polygon graphics in games
        How to determine volume-directory of current application?
        Launching a remote app with AppleScript?
        Learn C++ on the Mac with MacZoop- new website
        MacMkLinux Freezes
        Macsbug questions
        Opening Control Panel
        Pascal compiler
        Picture Help!
        Q: Inside Macintosh CD-ROM
        QuickDrawGX's future...
        REQ: Pascal source on line??
        Really Basic Question
        Scripting Addition to check for PowerMac vs. 68K
        Shareware Assembler
        Smalltalk for CW?
        Symantec, Mac, v8.x help requested
        System 7.5.5 fixes
        Think C 5.0.4...can't load resources! HELP!
        Time Manager Woes...
        Using QuickDraw.
        Where are the programmers switches on the new PCI Macs?
        [ANN] CW 10 is in the mail
        [ANN] OO Design Tool for Macintosh
        [Q] Creating fog in QD3D
        [Q] Reading text from anywhere in a file (in C or C++)
        [Q] ShutDwnPower mystery?
        [Q] Smooth text scrolling in a Rect
        [Q] Sound Manager 3.2 docs needed
        [Q]: System Extension Trigger
        help with malloc() needed
        mac 512k ed system HELP!!!



The Comp.Sys.Mac.Programmer Digest is moderated by Mark Aiken
(marka@ee.mcgill.ca).

The digest is a collection of article threads from the internet
newsgroups comp.sys.mac.programmer.help, csmp.tools, csmp.misc and
csmp.games. It is designed for people who read news semi-regularly and
want an archive of the discussions.  If you don't know what a
newsgroup is, you probably don't have access to it. Ask your systems
administrator(s) for details. If you don't have access to news, you
may still be able to post messages to the group by using a mail server
like anon.penet.fi (mail help@anon.penet.fi for more information).

Each issue of the digest contains one or more sets of articles (called
threads), with each set corresponding to a 'discussion' of a particular
subject.  The articles are not edited; all articles included in this digest
are in their original posted form (as received by our news server at
ee.mcgill.ca).  Article threads are not added to the digest until the last
article added to the thread is at least two weeks old (this is to ensure that
the thread is dead before adding it to the digest).  Article threads that
consist of only one message are generally not included in the digest.

The digests can be obtained by email, ftp or through the World Wide Web.

If you want to receive the digest by mail, send email to 
majordomo@ee.mcgill.ca with no subject and one of the following commands
as body:

    help		                Sends you a summary of commands
    subscribe csmp                      Adds you to the mailing list
    unsubscribe csmp                    Removes you from the list

Once you have subscribed, you will automatically receive each new
issue as it is created.

Back issues are available by ftp from Info-Mac mirror sites in the
per/csmp subdirectory, e.g.

  ftp://sumex-aim.stanford.edu/info-mac/per/csmp/

The contents of all back issues can be searched by accessing the
following URL, courtesy of Andrew Barry (ajbarry@ozemail.com.au):

    http://marvin.stattech.com.au/search.html

They can also be searched through the following URLs, thanks to
Tim Tuck (Tim.Tuck@sensei.com.au):

    http://wais.sensei.com.au/searchform.html
    wais://wais.sensei.com.au:210/csmp?

-------------------------------------------------------

>From cwasko@snet.net (Chris Waskowich)
Subject: **** ANSI C Array HELP ****
Date: Thu, 19 Sep 1996 15:17:29 -0400
Organization: University of Connecticut

I am working on a program that passes arrays.  I need these arrays to be
updated in one function and then the results printed out in another, IAW:


void function_a(void)     
   {                      
   float *array[20];      // I NEED this to be a pointer 
   int i
   
   for(i=1;i<=10;i++)          // I need to initialize the data in the array
      ??? array[i]=i;
                          
   function_b( ??? array);     // Then I need this to pass an address, How????
                          
   for(i=1;1<=20;1++)
      printf("%10.4f",array[i]);   
   }


If anyone can help, I would greatly appreciate it (e-mail me directly
too).  I have done this before, but I can't remember it, and I don't have
my old code available.



Thanks,

Chris Waskowich
cwasko@snet.net

+++++++++++++++++++++++++++

>From mh@primenet.com (Mark Hartman)
Date: 20 Sep 1996 07:28:02 -0700
Organization: Mark Hartman Computer Solutions

In article <cwasko-1909961517290001@mystic.ucc.uconn.edu>, cwasko@snet.net
(Chris Waskowich) wrote:

>I am working on a program that passes arrays.  I need these arrays to be
>updated in one function and then the results printed out in another, IAW:

Well, there are several problems with how you're doing it here.

>void function_a(void)     
>   {                      
>   float *array[20];      // I NEED this to be a pointer 

Maybe so, but you also need something for the pointers to point TO.  Before
you can initialize what is being pointed at, you really need to point to
something.

>   int i;
>   
>   for(i=1;i<=10;i++)          // I need to initialize the data in the array
>      ??? array[i]=i;

Assuming that you had set the pointer in question to the address of a float,
here you'd use
         *array[i] = i;

>                          
>   function_b( ??? array);     // Then I need this to pass an address, How????

         function_b(&array);     // Will pass the address of the array
>                          
>   for(i=1;1<=20;1++)
>      printf("%10.4f",array[i]);   

Why would you want to print out the addresses in float format?  Use
      printf("%10.4f", *array[i]);  // Prints the values, not the addresses

>   }
>
>Thanks,

You're welcome.
========================================================================
 Mark Hartman Computer Solutions - specializing in all things Macintosh
    C  C++   4th Dimension   Networking   System design/architecture
 tel +1(714)758.0640 -+- fax +1(714)999.5030 -+- e-mail mh@primenet.com
========================================================================
Wintel is to Mac as an Iraqi T-72 tank is to an M1A1 tank.  --Tom Clancy

+++++++++++++++++++++++++++

>From howlett@netcom.com (Scott Howlett)
Date: Fri, 20 Sep 1996 16:07:00 GMT
Organization: NETCOM On-line Communication Services (408 261-4700 guest)

mh@primenet.com (Mark Hartman) wrote:

> In article <cwasko-1909961517290001@mystic.ucc.uconn.edu>, cwasko@snet.net
> (Chris Waskowich) wrote:
> 
> >I am working on a program that passes arrays.  I need these arrays to be
> >updated in one function and then the results printed out in another, IAW:
> 
> Well, there are several problems with how you're doing it here.
> 
> >void function_a(void)     
> >   {                      
> >   float *array[20];      // I NEED this to be a pointer 
> 
> Maybe so, but you also need something for the pointers to point TO.  Before
> you can initialize what is being pointed at, you really need to point to
> something.

I think you missed something.

The whole problem with the original poster's code is that the above
declaration should simply be:

float array[20];

With that change, the rest of the code should be fine.

- Scott

-- 
Scott Howlett, howlett@netcom.com
"If trees could scream, would we be so cavalier about cutting them 
down? We might, if they screamed all the time, for no good reason."

+++++++++++++++++++++++++++

>From charlesc@nortel.ca (Chuck Charbonneau)
Date: 20 Sep 1996 14:09:50 GMT
Organization: Northen Telecom Limited, Ottawa

In article <cwasko-1909961517290001@mystic.ucc.uconn.edu>
cwasko@snet.net (Chris Waskowich) writes:

> 
> void function_a(void)     
>    {                      
>    float *array[20];      // I NEED this to be a pointer 
>    int i
>    
>    for(i=1;i<=10;i++)          // I need to initialize the data in the array
>       ??? array[i]=i;
>                           
>    function_b( ??? array);     // Then I need this to pass an address, How????
>                           
>    for(i=1;1<=20;1++)
>       printf("%10.4f",array[i]);   
>    }
> 
> 

Chris:

Try this:
void function_a(void)     
{                      
    float array[20];      <- the array name itself is a pointer
    int i;
 
    for(i=1;i<=10;i++)      <- NOTE: Your array init should start at 0
!!!!    
       array[i]=i; <- no explicit pointer dereference needed here (i.e.
no '*' needed; code is ok like this)    
                                                    
    function_b(array);     <- just pass the array name; your function_b
should be: function_b(float* array)       
                                              or function_b(float[]
array), I can't remember which is better
                           
    for(i=1;1<=20;1++)      <- AGAIN: start at 0 !!!
       printf("%10.4f",array[i]);   
}

I just tried this using Symantec C++ v 7.0.4 compiler on the Mac, and
it worked a-o.k.

I seem to remember some compilers choking on passing arrays of float in
this manner, but I can't be sure. Memory's not what it used to be.

Hope this helps,
-Chuck.
- --------------
C.J. Charbonneau
C++/GUI dev
Northern Telecom, Ottawa
Internet: charlesc@nortel.ca
Personal: carb@cyberus.ca

 


+++++++++++++++++++++++++++

>From gregj@europa.com (Greg Jorgensen)
Date: Sun, 22 Sep 1996 00:04:34 -0800
Organization: Europa Communications, Inc, Portland Oregon USA

In article <cwasko-1909961517290001@mystic.ucc.uconn.edu>, cwasko@snet.net
(Chris Waskowich) wrote:

>I am working on a program that passes arrays.  I need these arrays to be
>updated in one function and then the results printed out in another, IAW:
>
>
>void function_a(void)     
>   {                      
>   float *array[20];      // I NEED this to be a pointer 
>   int i
>   
>   for(i=1;i<=10;i++)          // I need to initialize the data in the array
>      ??? array[i]=i;
>                          
>   function_b( ??? array);     // Then I need this to pass an address, How????
>                          
>   for(i=1;1<=20;1++)
>      printf("%10.4f",array[i]);   
>   }

Here's one way to do it. In C/C++ the name of an array is effectively a
pointer to the first element of the array. You don't need to do anything
tricky with the declarations.


const int kArraySize = 20;

void function_a(void)
{
    float array[kArraySize];

    // initialize the array

    for ( int i = 0; i < kArraySize; ++i )
        array[i] = i;

    function_b(array, kArraySize);

    for ( int i = 0; i < kArraySize; ++i )
        printf("%10.4f\n", array[i]);
}

void function_b(float *array, int n)
{
    for ( int i = 0; i < n; ++i )
        array[i] = 2.0 * array[i];
}

-- 
Greg Jorgensen - Portland, Oregon, USA - gregj@europa.com

"I tell you, we are here on Earth to fart around, and don't let anyone tell you any different." -- Kurt Vonnegut

---------------------------

>From tree@apple.com (Tom Emerson)
Subject: ANNOUNCE: AGMenu 1.0 final release
Date: Mon, 23 Sep 1996 15:34:33 -0400
Organization: Apple Computer, Inc.

This message announces the availability of AGMenu 1.0.

AGMenu is a small library which manages the Guide (or Help, or Balloon
Help, or Question) Menu for you, letting you stash your application's
Apple guides in their own folder, out of the way of inquisitive users.
AGMenu places your guides in the correct locations in the menu, and uses
the same criteria that Apple Guide 2.0 uses when decided which guides
should be included. Integrating AGMenu into your application is trivial
and can often be done in less than an hour.

AGMenu's capabilities are superseded by Apple Guide 2.1, which adds the
ability to search an alternate directory for an application's guide files
without changing your application's code. AGMenu detects when Apple Guide
2.1 (or later) is installed and does nothing, letting the System take care
of things. The advantage of AGMenu is that it works regardless of which
version of Apple Guide you're using.

AGMenu will work with all of the Macintosh C, C++, and Pascal development
environments, and includes information on using it with PowerPlant and the
THINK Class Library. It also works with the Mercutio MDEF.

The release notes for AGMenu can be found on the World Wide Web at

    <http://www.tiac.net/users/tree/AGMenu.html>

You can obtain AGMenu via anonymous ftp from

    <ftp://ftp.cambridge.apple.com/pub/users/tree/AGMenu1.0.hqx>

It has also been submitted to macgifts.

NB: AGMenu is not an Apple supported product.

You may use AGMenu freely in your programs, all I ask is that you let me
know that you are using it so I can keep you informed of changes and
enhancements. If you feel like giving credit in an about box or sending me
a copy of your software, that would be super too.

Changes from 1.0d3:

- Removed AGMenuKey and AGMenuSelect from the API. AGMenu now patches
  MenuKey and MenuSelect, allowing it to be used without modifying user
  code. 

- Ignores new Mac OS 8 guide file types.

- Fixed serious lossage in the Pascal interface file (and actually
  tested it!)

- When opening a guide file AGMenu will wait for the application portion
  of Apple Guide to start (if necessary) before calling AGOpen. This works
  around a problem where Apple Guide doesn't wait long enough for the
  application portion to start if it starts it up. 

Enjoy.

    -tre

--
Tom Emerson                                                 Cambridge R&D
Senior Software Engineer                             Apple Computer, Inc.
<mailto:tree@apple.com>                  <http://www.tiac.net/users/tree>

---------------------------

>From bolen@scws30.harvard.edu (David Bolen)
Subject: Apple Events on a PPC
Date: 20 Sep 1996 04:56:56 GMT
Organization: Harvard University, Cambridge, Massachusetts

is there anything special that has to be done to code apple 
events in pascal on the PowerPC that you wouldn't need to do
on the 68k?  I've used the UPPs and my apple events still don't
work.  Thanks

Britt

--
- ---------------
Britt Bolen <bolen@fas.harvard.edu>
http://www.fas.harvard.edu/~bolen/index.html


+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:55:18 GMT
Organization: Will hack for food

David Bolen (bolen@scws30.harvard.edu) wrote:
> is there anything special that has to be done to code apple 
> events in pascal on the PowerPC that you wouldn't need to do
> on the 68k?  I've used the UPPs and my apple events still don't
> work.  Thanks

You need to use UPPs and declare everything correctly.

Of course, a bit more descriptive troubleshooting would help.

"still don't work" is insufficient information to go on.

Jon



+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:55:18 GMT
Organization: Will hack for food

Reposting article removed by rogue canceller.

David Bolen (bolen@scws30.harvard.edu) wrote:
> is there anything special that has to be done to code apple 
> events in pascal on the PowerPC that you wouldn't need to do
> on the 68k?  I've used the UPPs and my apple events still don't
> work.  Thanks

You need to use UPPs and declare everything correctly.

Of course, a bit more descriptive troubleshooting would help.

"still don't work" is insufficient information to go on.

Jon



---------------------------

>From lottsim@aol.com (LOTTSIM)
Subject: Application Merge
Date: 22 Sep 1996 12:10:00 -0400
Organization: America Online, Inc. (1-800-827-6364)

This sounds like an odd, unorthodox question, and yes, it probably is.

I want to "merge" an application with another (or in my case, a control
panel).  My question is, can I "launch" this application from within the
main one (or control panel)?

I know how to write/open/use external code resources, and find it an
invaluable tool (since I might use a certain bit of code in ALL my
programs, I can make the code an external resource).

I've already designed the code to copy *all* the resources over (since it
is a control panel, I don't run in to any ID conflicts...except for
version info, which can be removed anyway) from the target application to
my control panel.  Would I simply open the 'CODE' resource number 0?  Or
is it more complicated than that?

Thanks,
Alex Rampell

+++++++++++++++++++++++++++

>From Horst Pralow <h_pralow@overnet.de>
Date: Mon, 23 Sep 1996 14:34:10 +0200
Organization: overnet

LOTTSIM wrote:
> 
> This sounds like an odd, unorthodox question, and yes, it probably is.
> 
> I want to "merge" an application with another (or in my case, a control
> panel).  My question is, can I "launch" this application from within the
> main one (or control panel)?
> ...
> I've already designed the code to copy *all* the resources over (since it
> is a control panel, I don't run in to any ID conflicts...except for
> version info, which can be removed anyway) from the target application to
> my control panel.  Would I simply open the 'CODE' resource number 0?  Or
> is it more complicated than that?
> 
> Thanks,
> Alex Rampell

To launch an embedded application from within a control panel all you
have to do
is find out the FSSpec of your control panel and stuff this information
into a
LaunchParamBlock and then call the LaunchApplication() function.
I have done this and it works like a charm, but you might perhaps supply
some
additional information to LaunchApplication(). Since I'm writing this
off amy head
without access to my sources, I'm not sure about the exact information
needed by
LaunchApplication(), but the above is it in a nutshell.

To have a second application inside another one IMO would always yield a
resource ID
conflict at least for classic (non CFM) 68k apps since both would
require at the very
least a 'CODE' 0 resource.

HTH
Horst

+++++++++++++++++++++++++++

>From lottsim@aol.com (LOTTSIM)
Date: 23 Sep 1996 18:27:59 -0400
Organization: America Online, Inc. (1-800-827-6364)

<<<<<<<<<
To launch an embedded application from within a control panel all you
have to do
is find out the FSSpec of your control panel and stuff this information
into a
LaunchParamBlock and then call the LaunchApplication() function.
I have done this and it works like a charm, but you might perhaps supply
some
additional information to LaunchApplication(). Since I'm writing this
off amy head
without access to my sources, I'm not sure about the exact information
needed by
LaunchApplication(), but the above is it in a nutshell.
>>>>>>>

I'm not sure if you were referring to sample code ("but the above is it in
a nutshell")

What I'm going to do, more specifically, is launch this from an INIT. 
This appears to be a daunting task, so before I embark upon it, I'd like
to know a few things.

I'm not really sure how to use LaunchApplication to open an embedded
'CODE' resource, but I do know how to create an FSSpec to one's self. 
This is what I do upon startup; when the "first time" code (not the patch)
runs, it creates an FSSpec to itself that is stored in a global that the
patch accesses.

So I guess I want to UseResFile (from the INIT) to the FSSpec that I've
created, and then Launch the CODE resource (I'm not completely sure how to
do this...there won't be any resource conflicts, as this is a cdev/INIT).

The problem (that I've thought about) is in the following:
Since the INIT is in the System Heap, I'll be OK saying UseResFile, but
then I have to switch it back, right?  However, as this application is
completely independant from my INIT, I won't know when this happens,
unless I patch some more traps.  Is there any way around this problem?

Will I be calling LaunchApplication, or just opening the 'CODE' resource?

This is a complicated question (or at least I think so...).  Any help
would be greatly appreciated.

Thanks,
Alex Rampell

---------------------------

>From bilewicz@helf4.physik.fu-berlin.de (Roger Bilewicz)
Subject: Baud rate constants for serial driver
Date: 20 Sep 96 10:26:48 GMT
Organization: Freie Universitaet Berlin

Hi all,

examining the constants which help to determine the baudrate of the
serial driver, one finds that 
   value_to_pass := (115200 div baudrate) - 2 
gives the value for all baudrates.

But I wonder why there is an offset of 2 ? Does anybody know the reason? 

Thanks,
Roger


+++++++++++++++++++++++++++

>From harun@village.village.de (Harun Scheutzow)
Date: Sat, 21 Sep 1996 19:10:54 GMT
Organization: Village Tronic Marketing GmbH

The reason for the offset 2 is the SCC. The SCC requires this
values.

Regards, HS
< Opinions are my own >


+++++++++++++++++++++++++++

>From hep09515@rrzs42 (Peter Heitzer)
Date: 23 Sep 1996 08:09:35 GMT
Organization: University of Regensburg, Germany

Roger Bilewicz (bilewicz@helf4.physik.fu-berlin.de) wrote:
:    value_to_pass := (115200 div baudrate) - 2 
: gives the value for all baudrates.

: But I wonder why there is an offset of 2 ? Does anybody know the reason? 
AFAIK thats how the Zilog 8530 chip wants the value. If you want to use
the "normal" baudrates, eg. 1200, 2400, .. you should use the predefined
constants as described in Inside Macintosh .
Hope that helps,
Peter


--
Dipl.-Inform. Peter Heitzer
phone +49 941 943 4850, fax +49 941 943 4857
mail Peter.Heitzer@rz.uni-regensburg.de

+++++++++++++++++++++++++++

>From harun@village.village.de (Harun Scheutzow)
Date: Sat, 21 Sep 1996 19:10:54 GMT
Organization: Village Tronic Marketing GmbH

Reposting article removed by rogue canceller.

The reason for the offset 2 is the SCC. The SCC requires this
values.

Regards, HS
< Opinions are my own >


+++++++++++++++++++++++++++

>From harun@village.village.de (Harun Scheutzow)
Date: Sat, 21 Sep 1996 19:10:54 GMT
Organization: Village Tronic Marketing GmbH

Reposting article removed by rogue canceller.

The reason for the offset 2 is the SCC. The SCC requires this
values.

Regards, HS
< Opinions are my own >


---------------------------

>From hawkfish@punchdeck.com (Richard Wesley)
Subject: Extended on PPC???
Date: Mon, 23 Sep 1996 10:25:13 -0700
Organization: Electric Fish, Inc.

In Types.h and various other places I find the statement that "exteneded
is not defined for PPC".  How the hell does one use ::ExtendedToString if
there is no way to create an extended on a PPC?


- rmgw

http://www.halcyon.com/hawkfish/Index.html

- --------------------------------------------------------------------------
Richard Wesley             | "I don't know about your dreams
hawkfish@punchdeck.com     |  But mine are sort of hackneyed"
hawkfish@electricfish.com  |   - Laurie Anderson, "Talk Normal"
- --------------------------------------------------------------------------

+++++++++++++++++++++++++++

>From hawkfish@punchdeck.com (Richard Wesley)
Date: Mon, 23 Sep 1996 16:34:08 -0700
Organization: Electric Fish, Inc.

In article <hawkfish-2309961025130001@blv-pm12-ip1.halcyon.com>,
hawkfish@punchdeck.com (Richard Wesley) wrote:

>In Types.h and various other places I find the statement that "exteneded
>is not defined for PPC".  How the hell does one use ::ExtendedToString if
>there is no way to create an extended on a PPC?

Never, mind, I dound it in fp.h.  Why can't MW just do the right thing...


- rmgw

http://www.halcyon.com/hawkfish/Index.html

- --------------------------------------------------------------------------
Richard Wesley             | "I don't know about your dreams
hawkfish@punchdeck.com     |  But mine are sort of hackneyed"
hawkfish@electricfish.com  |   - Laurie Anderson, "Talk Normal"
- --------------------------------------------------------------------------

+++++++++++++++++++++++++++

>From hawkfish@punchdeck.com (Richard Wesley)
Date: Mon, 23 Sep 1996 16:34:08 -0700
Organization: Electric Fish, Inc.

In article <hawkfish-2309961025130001@blv-pm12-ip1.halcyon.com>,
hawkfish@punchdeck.com (Richard Wesley) wrote:

>In Types.h and various other places I find the statement that "exteneded
>is not defined for PPC".  How the hell does one use ::ExtendedToString if
>there is no way to create an extended on a PPC?

Never, mind, I dound it in fp.h.  Why can't MW just do the right thing...


- rmgw

http://www.halcyon.com/hawkfish/Index.html

- --------------------------------------------------------------------------
Richard Wesley             | "I don't know about your dreams
hawkfish@punchdeck.com     |  But mine are sort of hackneyed"
hawkfish@electricfish.com  |   - Laurie Anderson, "Talk Normal"
- --------------------------------------------------------------------------

---------------------------

>From hawkfish@punchdeck.com (Richard Wesley)
Subject: Folder selection madness
Date: Wed, 18 Sep 1996 09:27:55 -0700
Organization: Electric Fish, Inc.

OK, I have a CustomGetFile modification that allows the user to choose a
folder.   What I cannot seem to do is get it to select a particular folder
when it comes up.  I have no trouble specifying the parent directory in
the usual way, but the damn thing insists on picking some other random
folder as the initial selection.  I have tried specifying the folder
itself as the starting point, which results in some random folder _inside_
the starting point being selected; and I have tried selecting the folder
itself inside its parent directory, which results in the last folder in
the list being selected.

Has anyone managed to do this?

(N.B.  I have seen the source code from IM-Files and at least two PD
libraries for choosing folders.  None of them address this problem.)


- rmgw

http://www.halcyon.com/hawkfish/Index.html

- --------------------------------------------------------------------------
Richard Wesley             | "I don't know about your dreams
hawkfish@punchdeck.com     |  But mine are sort of hackneyed"
hawkfish@electricfish.com  |   - Laurie Anderson, "Talk Normal"
- --------------------------------------------------------------------------

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:51:17 GMT
Organization: Will hack for food

Richard Wesley (hawkfish@punchdeck.com) wrote:
> OK, I have a CustomGetFile modification that allows the user to choose a
> folder.   What I cannot seem to do is get it to select a particular folder
> when it comes up.  I have no trouble specifying the parent directory in
> the usual way, but the damn thing insists on picking some other random
> folder as the initial selection.  I have tried specifying the folder
> itself as the starting point, which results in some random folder _inside_
> the starting point being selected; and I have tried selecting the folder
> itself inside its parent directory, which results in the last folder in
> the list being selected.

> Has anyone managed to do this?

> (N.B.  I have seen the source code from IM-Files and at least two PD
> libraries for choosing folders.  None of them address this problem.)

The real question is, how are you doing this?  By slamming CurDirStore and
SFSaveDisk before calling CustomGetFile?  That definately won't work because
of General controls and StuperBoomerang.

What you need to do is use a filter and slam these on or about your first 
call, which should be after the other guys slam them.

Good luck.

Jon


+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:51:17 GMT
Organization: Will hack for food

Reposting article removed by rogue canceller.

Richard Wesley (hawkfish@punchdeck.com) wrote:
> OK, I have a CustomGetFile modification that allows the user to choose a
> folder.   What I cannot seem to do is get it to select a particular folder
> when it comes up.  I have no trouble specifying the parent directory in
> the usual way, but the damn thing insists on picking some other random
> folder as the initial selection.  I have tried specifying the folder
> itself as the starting point, which results in some random folder _inside_
> the starting point being selected; and I have tried selecting the folder
> itself inside its parent directory, which results in the last folder in
> the list being selected.

> Has anyone managed to do this?

> (N.B.  I have seen the source code from IM-Files and at least two PD
> libraries for choosing folders.  None of them address this problem.)

The real question is, how are you doing this?  By slamming CurDirStore and
SFSaveDisk before calling CustomGetFile?  That definately won't work because
of General controls and StuperBoomerang.

What you need to do is use a filter and slam these on or about your first 
call, which should be after the other guys slam them.

Good luck.

Jon


---------------------------

>From Lapeplau@ucla.edu (Steve Gordon)
Subject: Game: Feathers and Space? First Mac Game?
Date: 23 Sep 1996 20:13:14 GMT
Organization: University of California, Los Angeles

Does anyone here remember aone of the earliest Mac games, called Feathers
and Space. Spaceships try to rescue humans from the surface of a planet,
while evil birds try to carry away the humans and crash into the rescue
ships. It was one of the very earliest games for Mac, innovative for its
era. Does anyone have the game (it was copy-protected: "Please insert
original disk....")?

What was the first commercially available game for Mac?

Steve Gordon

+++++++++++++++++++++++++++

>From bpettit@aimnet.com (Brad Pettit)
Date: Mon, 23 Sep 1996 18:10:32 -0700
Organization: Apple Computer

Hmm, I think MacSlots would be a candidate for first commercial game.
There were quite a few Infocom games early on, too. Also, there was a
pretty good little backgammon game that was shareware or freeware, and it
still works!

--Brad (Mac Owner Since April 1984)
- --

In article <Lapeplau-2409961214390001@ts19-11.wla.ts.ucla.edu>,
Lapeplau@ucla.edu (Steve Gordon) wrote:

> What was the first commercially available game for Mac?
> 
> Steve Gordon

+++++++++++++++++++++++++++

>From gandreas@mirage.skypoint.com (Glenn Andreas)
Date: 24 Sep 1996 13:34:14 GMT
Organization: GAndreas Software

> In article <Lapeplau-2409961214390001@ts19-11.wla.ts.ucla.edu>,
> Lapeplau@ucla.edu (Steve Gordon) wrote:
> 
> > What was the first commercially available game for Mac?
> > 
> > Steve Gordon


I'd have to vote for that Alice in Wonderland chess game that came from
Apple "Through the Looking Glass" by Steve Capps (you know, the one that
shipped in a box designed to look like a book).  It has a copyright of
1984.  And I've even got a copy still in shrinkwrap with the "Macintosh
Software" sticker on it

-- 
Glenn Andreas                                 Author of Macintosh games:
gandreas@skypoint.com                               Theldrow 2.3
http://www.skypoint.com/members/gandreas            Blobbo 1.0.2
ftp://ftp.skypoint.com/pub/members/g/gandreas
Unsolicited bulk email will be proofread for a US$500/k, min $1000

---------------------------

>From Carl Bäckström <carl.backstrom@gfk.se>
Subject: Get a font list
Date: Sat, 21 Sep 1996 03:14:39 +0200
Organization: - Young but beautiful -

How do I get a list of the currently installed fonts in C code?

-Beginner :)

+++++++++++++++++++++++++++

>From davep@best.com (Dave Polaschek)
Date: Sat, 21 Sep 1996 08:33:07 -0700
Organization: Best Internet Communications

Reposting article removed by rogue canceller.

In article <32434154.55BE@gfk.se>, carl.backstrom@gfk.se wrote:

> How do I get a list of the currently installed fonts in C code?

The way to get a nice, sorted list just like you'll see in a font
menu is to call AppendResMenu('FONT') and then read out the menu
item text for each font. If you don't care about sorting, or WANT
the fonts whose names start with % (which are typically synthetic
ATM fonts) just look for all the 'FOND' and 'FONT' resources in
the system heap. You want to make sure to SetResLoad to false so
you don't actually load any fonts by mistake (japanese fonts can
be 5-10M in size, so you don't want to be loading them by accident)


-DaveP

-- 
Dave Polaschek home:davep@best.com work:dpolasch@apple.com

---------------------------

>From kcglug@earthlink.net (Keith & Casey Gugliotto)
Subject: - GetKeys() KeyMap Structure (0-1) Re: How to decode GetKeys(KeyMap)?
Date: 19 Sep 1996 20:18:09 GMT
Organization: The Gugliotto's

In article <3240105A.43CF@helix.mgh.harvard.edu>, Erik Sobel
<sobel@helix.mgh.harvard.edu> wrote:

>What is a quick way to get the character value from the GetKeys(KeyMap)
>command?  Inside Mac says that KeyMap is a packed array of bits (Boolean
>KeyMap[127]) so that letter J == key# 38 makes  KeyMap[37]==1).  
>
>In CodeWarrior the KeyMap is an array of UInt32 (UInt32 KeyMap[4]) where
>a UInt32 is a 32bit unsigned long.
>
>The following don't work for me in CodeWarrior C.  Any suggestions?
>
>char charCode;
>KeyMap myKeyMap;
>
>GetKeys(myKeyMap);
>--->charCode = KeyMap[37];
>        
>        or
>
>---->for(i=0;i<128;i++) if((*myKeyMap >> i) & 1) break;
>---->charCode = i;
>
>Thanks.
>Erik Sobel
>sobel@helix.mgh.harvard.edu

Erik, here's a generic snippet to translate the return value of GetKeys()
into a workable array of booleans.  This took me a few hours to figure,
back when I started with the Mac.  You could alter it to just check for
the keys you're interested in - but this is so fast on a 6100 that in my
games you have to hope it doesn't register three times through the main
loop.  Included is a diagram of how the KeyMap is encoded into the four
unsigned longs you're seeing.

void doKeyCheck()
{
long     x,y;
unsigned long     z;
KeyMap            theKeys;
Boolean           theKeysDown[128];

      y = 0;
      GetKeys(theKeys);
      
      for(z = 0; z < 4; z++)
      {
         for(x = 16777216; x <= 2147483648 && x > 0; x = x*2)
         {
            if(theKeys[z] & x) 
            {
               theKeysDown[y] = 1;
            }
            y++;
         }
         for(x = 65536; x <= 8388608; x = x*2)
         {
            if(theKeys[z] & x) 
            {
               theKeysDown[y] = 1;
            }
            y++;
         }
         for(x = 256; x <= 32768; x = x*2)
         {
            if(theKeys[z] & x) 
            {
               theKeysDown[y] = 1;
            }
            y++;
         }
         for(x = 1; x <= 128; x = x*2)
         {
            if(theKeys[z] & x) 
            {
               theKeysDown[y] = 1;
            }
            y++;
         }
      } 

}

+++++++++++++++++++++++++++

>From thebug@berlin.snafu.de (TheBug)
Date: Fri, 20 Sep 1996 13:40:12 +0100
Organization: privat

In article <kcglug-1909961524350001@news.earthlink.net>,
kcglug@earthlink.net (Keith & Casey Gugliotto) wrote:

> Erik, here's a generic snippet to translate the return value of GetKeys()
> into a workable array of booleans.  This took me a few hours to figure,
> back when I started with the Mac.  You could alter it to just check for
> the keys you're interested in - but this is so fast on a 6100 that in my
> games you have to hope it doesn't register three times through the main
> loop.  Included is a diagram of how the KeyMap is encoded into the four
> unsigned longs you're seeing.


So how does this work if the poor user has not only a keyboard but also a
joystick that generates keys?
KeyMap does contain only the status of the device that was the last to
report a change. If you press and hold something on one device and then
press some key on another device you only have the key active on the
second device in KeyMap.

-- 
*******************************************************************
Guido Körber -            Programmer and hardware hacker 
thebug@berlin.snafu.de    Specialised in mistreating the ADB
fax: x49-30-773 81 36     Ask me about:
                           Flightstick Pro, Jetstick
                           MacEnjoy, MacEnjoy Style

Opinions expressed herein are mine unless expressly stated 
otherwise. Similarities with living or undead persons are
coincidence and not intended - really!   ;-)
Best use before: (see date printed on backside of message)
*******************************************************************

+++++++++++++++++++++++++++

>From mills@multiad.com (Steve Mills)
Date: Fri, 20 Sep 1996 11:30:32 -0500
Organization: Multi-Ad Services, Inc.

In article <kcglug-1909961524350001@news.earthlink.net>,
kcglug@earthlink.net (Keith & Casey Gugliotto) wrote:

>In article <3240105A.43CF@helix.mgh.harvard.edu>, Erik Sobel
><sobel@helix.mgh.harvard.edu> wrote:
>
>>What is a quick way to get the character value from the GetKeys(KeyMap)
>>command?  Inside Mac says that KeyMap is a packed array of bits (Boolean
>>KeyMap[127]) so that letter J == key# 38 makes  KeyMap[37]==1).  

>void doKeyCheck()
>{
>long     x,y;
>unsigned long     z;
>KeyMap            theKeys;
>Boolean           theKeysDown[128];
>
[huge function snipped]
>}

   Woah there. There's a much easier way. It looks something like:

Boolean KeyIsDown(KeyMap map, unsigned char key)
{
   return ((unsigned char*)map)[key >> 3] >> (key & 7);
}

Steve Mills, software engineer
Multi-Ad Services, Inc. / mills@multiad.com
Home: muff@visi.com

+++++++++++++++++++++++++++

>From ingemar@lysator.liu.se (Ingemar Ragnemalm)
Date: 20 Sep 1996 08:25:05 GMT
Organization: (none)

kcglug@earthlink.net (Keith & Casey Gugliotto) writes:

>In article <3240105A.43CF@helix.mgh.harvard.edu>, Erik Sobel
><sobel@helix.mgh.harvard.edu> wrote:

>>What is a quick way to get the character value from the GetKeys(KeyMap)
>>command?  Inside Mac says that KeyMap is a packed array of bits (Boolean
>>KeyMap[127]) so that letter J == key# 38 makes  KeyMap[37]==1).  

Just a note for Pascal users: this problem *does not exist* in Pascal!
The KeyMap is a packed array of Booleans, so we can just look up the
key we want. C has no packed arrays (and really no true Booleans either
for that matter) so in C it has to be done the other way.

var km: KeyMap;

GetKeys(km);

if km[someKeyCode] then ...

Just so you don't get lost in a mess of BAnd, BSL etc for no reason.

--
- -
Ingemar Ragnemalm, PhD
Image processing, Mac shareware games
E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se

+++++++++++++++++++++++++++

>From kcglug@earthlink.net (Keith & Casey Gugliotto)
Date: Tue, 24 Sep 1996 13:03:42 -0600
Organization: The Gugliotto's

In article <mills-2009961130320001@news.orbis.net>, mills@multiad.com
(Steve Mills) wrote:

>In article <kcglug-1909961524350001@news.earthlink.net>,
>kcglug@earthlink.net (Keith & Casey Gugliotto) wrote:
>
>>In article <3240105A.43CF@helix.mgh.harvard.edu>, Erik Sobel
>><sobel@helix.mgh.harvard.edu> wrote:
>>
>>>What is a quick way to get the character value from the GetKeys(KeyMap)
>>>command?  Inside Mac says that KeyMap is a packed array of bits (Boolean
>>>KeyMap[127]) so that letter J == key# 38 makes  KeyMap[37]==1).  
>
>>void doKeyCheck()
>>{
>>long     x,y;
>>unsigned long     z;
>>KeyMap            theKeys;
>>Boolean           theKeysDown[128];
>>
>[huge function snipped]
>>}
>
>   Woah there. There's a much easier way. It looks something like:
>
>Boolean KeyIsDown(KeyMap map, unsigned char key)
>{
>   return ((unsigned char*)map)[key >> 3] >> (key & 7);
>}
>
>Steve Mills, software engineer
>Multi-Ad Services, Inc. / mills@multiad.com
>Home: muff@visi.com

As noted, my snippet was generic.

keith (& casey) gugliotto
kcglug@earthlink.net

---------------------------

>From Vy Ho <st946tbf@dunx1.ocs.drexel.edu>
Subject: Help on JDBC
Date: Fri, 20 Sep 1996 11:32:56 -0400
Organization: (none)

Hi netters,

Please help.  Is there any JDBC driver for Macintoshes yet?  Where can a
get it?  Free?  Shareware?  Demo?  Fee?  Where can I find valuable
information on programming JDBC.  I just down load JDBC specification
from sun so don't point me there please.  I need an tutorial or any sort
like that.  Your help is important to me.  Any help is appreciated. 
Thank you very much in advance.  Please send one copy of your reply to
my e-mail account:  st946tbf@dunx1.ocs.drexel.edu

Vy Ho

+++++++++++++++++++++++++++

>From skovatch@ic.net (Scott Kovatch)
Date: Mon, 23 Sep 1996 10:39:08 -0400
Organization: Metrowerks Corporation

In article <3242B928.6907@dunx1.ocs.drexel.edu>, Vy Ho
<st946tbf@dunx1.ocs.drexel.edu> wrote:

>Hi netters,
>
>Please help.  Is there any JDBC driver for Macintoshes yet?

At the moment, I don't believe there are any yet, but I may be wrong. 
Maybe EveryWare (the Butler SQL people) will be the first?

>Where can I find valuable
>information on programming JDBC. 

The book _Tricks of the Java Programming Gurus_ by Vanderberg, et al., has
a chapter on JDBC.  It's not huge, but it's a good start.  It has sample
code, and talks about some of the details about database programming in
general, not just the JDBC API.

Scott K.

- -----------------------------------------------------------------
Scott Kovatch                                Java Librarian (shhh!)
Metrowerks Corp.                                    skovatch@ic.net
                                            skovatch@metrowerks.com

---------------------------

>From g-kendall@nwu.edu (Brian Kendall)
Subject: Help with polygon graphics in games
Date: Fri, 13 Sep 1996 22:07:21 -0400
Organization: Programmer


I'm thinking of putting together a 3D maze game using polygon graphics. So
far, I've been able to make a cube in 3D space and draw it to the screen.
It also can be rotated in three dimensions very quickly.

Unfortunatly (of course), there would be a lot of polygon objects that
could go slightly beyond games like Spectre. Could the macintosh handle
this?

Any help would be great!


Brian K.

‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹
"If you take cranberries and stew them like apple sauce, it tastes
much more like prunes then rhubarb does." ‹ Groucho Marx
‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹

+++++++++++++++++++++++++++

>From metals@rapidnet.com (Kevin Stone)
Date: 15 Sep 1996 00:09:33 -0600
Organization: RapidNet

Brian Kendall (g-kendall@nwu.edu) wrote:
: I'm thinking of putting together a 3D maze game using polygon graphics. So
: far, I've been able to make a cube in 3D space and draw it to the screen.
: It also can be rotated in three dimensions very quickly.

: Unfortunatly (of course), there would be a lot of polygon objects that
: could go slightly beyond games like Spectre. Could the macintosh handle
: this?

   Depends upon what Mac you want to do this on.  I expect that Spectre 
   was written entirely in 68k assembly and probably implemented some form  
   of a delta rendering algorithm for more efficiency.  It ran great on my 
   old LC 020.  Writting a 3D game for the 68k series is quite an 
   undertaking, esspecialy if you want to get more complicated than
   Spectre.  Hornet and A-10 are about as detailed as you can get on a 
   68k, and even those engines require quite abit of assembly optimzation 
   and sophisticated rendering algorithms to get as much speed as they get.

   You could probably get away writting a maze-like 3D game that's above the 
   level of Spectre on an 040 25Mhz or better Mac using standard rendering 
   technqiues and no assembly.  That's just a guess ofcourse.  I've never 
   programmed graphics for the 68k's.

   The PowerPC is my forte...
   The PPC can handle alot without any special assembly optimizations.  
   I've written a nice 3D polygonal engine that does Gouraud shading 
   and texture mapping for the PPC without any assembly at all... infact, 
   it's mostly floating point code.  There's no way you could use floating 
   point in such great quatities on any 68k Mac and get away with it... 
   you'd have to use an integer fixed-point format to emulate floating 
   point numbers.

   So, to answer your question... yes and no.  Yes, fast Macs 
   like the 040's and PPC's could do it even if your not the worlds 
   greatest programmer.  No, slower Macs couldn't do it unless you're 
   very experienced and know how to optimize.

   If you need any help in the 3D algorithm department, I'd be happy to 
   answer any questions you have. :)

Sincerly,
  Brian Stone
  Stone Enterprises
  metals@rapidnet.com


+++++++++++++++++++++++++++

>From kant0031@gold.tc.umn.edu (Krishna M Kant)
Date: 15 Sep 1996 12:43:03 GMT
Organization: University of Minnesota

Kevin Stone (metals@rapidnet.com) wrote:
:    If you need any help in the 3D algorithm department, I'd be happy to 
:    answer any questions you have. :)

OK, I have several questions <g>.  Games like Hornet/A-10 seem to use a
"delta"  drawing algorithm.  They only draw the portions of polygons that
have changed from the last screen, thereby greatly minimizing VRAM writes.
You can see this by doing a force quit and cancelling--the game will only
draw the polygons which have moved, leaving the rest white. This type of
engine makes sense when much of the screen stays the same from frame to
frame (i.e. mostly constant shaded polygons), but does not work well when
most of the pixels change (i.e. full screen texture mapping) since you
have the unnecesary overhead of determining which pixels change.  Am I
correct?  What are the general steps of such an algorithm, assuming you
are given a forest of BSP trees? 

--
Krishna
kant0031@gold.tc.umn.edu

+++++++++++++++++++++++++++

>From jmunkki@alpha.hut.fi (Juri Munkki)
Date: 16 Sep 1996 00:50:40 GMT
Organization: Helsinki University of Technology

In article <51gtkn$ojk@epx.cis.umn.edu> kant0031@gold.tc.umn.edu (Krishna M Kant) writes:
>"delta"  drawing algorithm.  They only draw the portions of polygons that
>have changed from the last screen, thereby greatly minimizing VRAM writes.
>You can see this by doing a force quit and cancelling--the game will only
>draw the polygons which have moved, leaving the rest white. This type of
>engine makes sense when much of the screen stays the same from frame to
>frame (i.e. mostly constant shaded polygons), but does not work well when
>most of the pixels change (i.e. full screen texture mapping) since you
>have the unnecesary overhead of determining which pixels change.  Am I
>correct?

You can still gain some advantage by using it to prevent overdraw and by
using it for flat-shaded areas in an otherwise textured game (if you mix
textures and flat polygons).

>What are the general steps of such an algorithm, assuming you
>are given a forest of BSP trees? 

You can do it on 2D polygons, if you want. Assign codes to colors (A-10
uses 64 colors and leaves 2 bits for HUD graphics overlays) and scan convert
into a span list. You then compare it with the span list from the displayed
frame and draw the differences.

A-10 pays a price for the HUD, because it has to exclusive or the changes
into the frame buffer, so it has to read and write video memory to make
the modifications. (They may do it differently, if there is no HUD overlay
displayed.)

Avara uses virtual colors, so that you can have thousands of colors and
even use patterns to generate more colors in modes that normally have only
256 colors or less. The approach means that it can work correctly even
when the color depth changes in the middle of an animation or when the
animation spans multiple screens. It also means that it needs an additional
table lookup before drawing each span, but the cost of doing that is very
small.

The critical part of drawing just the differences is in scan converting the
polygon edges into the span lists. The main difficulty is that the algorithms
tend to get slow very quickly as the number of overlapping polygons increase.
For a maze game, you would then want to minimize the number of overlapping
polygons that are fed to the scan converter. I was able to improve on the
well known pubished scan conversion algorithms by quite a bit, but it's still
the major CPU bottleneck in Avara for certain types of scenes.

In a Descent/Doom/Marathon/Quake like environment, you would want to cull
as many polygons as is possible before they reach the final stages of the
pipeline. The use of visibility "portals" works well for this. Quake uses
bitmaps to indicate what surfaces are potentially visible from a subspace.

-- 
Juri Munkki jmunkki@iki.fi		Life is easy when polygons are cheap.
http://www.iki.fi/jmunkki		   Windsurfing: Faster than the wind.

+++++++++++++++++++++++++++

>From nick@chem.ucla.edu ( nick.c )
Date: Mon, 16 Sep 1996 13:49:09 -0800
Organization: Binary Poet & Molecular Sculptor



jackw@cdc.net (Jack W) wrote:

>g-kendall@nwu.edu (Brian Kendall) writes:
>
>> I'm thinking of putting together a 3D maze game using polygon graphics. So
>> far, I've been able to make a cube in 3D space and draw it to the screen.
>> It also can be rotated in three dimensions very quickly.
>
>You might want to look at Black Art of Mac Game Programming
>and Engines of Creation.


   I haven't read the _Black Art_ book, but Engines is a kool book
     and will help.  Also check out _Fast Algorithms_, it's expensive
     (but worth it, IMHO).

       _Fast Algorithms for 3D-Graphics_ by Georg Glasser
       Springer-Verlag, ISBN: 0-387-94288-2  
    
       _Engines of Creation_ by Jonathan Blossom
       Waite Group Press, 1995, ISBN: 1-878739-90-5


 -------------------= Nicholas C. DeMello, Ph.D. =--------------------

   Internet: nick@chem.ucla.edu        _/   _/  _/  _/_/_/   _/   _/  
        AOL: codeweaver               _/_/ _/  _/  _/   _/  _/_/_/ 
        CIS: 71232,766               _/ _/_/  _/  _/       _/ _/    
       http://www.chem.ucla.edu/~nick/   _/  _/   _/_/_/  _/   _/     

+++++++++++++++++++++++++++

>From kant0031@gold.tc.umn.edu (Krishna Kant)
Date: Wed, 18 Sep 1996 08:52:10 -0600
Organization: U of M

In article <51i890$mqs@nntp.hut.fi>, jmunkki@alpha.hut.fi (Juri Munkki) wrote:

> You can do it on 2D polygons, if you want. Assign codes to colors (A-10
> uses 64 colors and leaves 2 bits for HUD graphics overlays) and scan convert
> into a span list. You then compare it with the span list from the displayed
> frame and draw the differences.
>
> The critical part of drawing just the differences is in scan converting the
> polygon edges into the span lists. The main difficulty is that the algorithms
> tend to get slow very quickly as the number of overlapping polygons increase.
> For a maze game, you would then want to minimize the number of overlapping
> polygons that are fed to the scan converter. I was able to improve on the
> well known pubished scan conversion algorithms by quite a bit, but it's still
> the major CPU bottleneck in Avara for certain types of scenes.
> 

Ahh, I see.  Thanks!  I was thinking of doing it differently:  Each
polygon stores a set of "previous" screen coordinates.  First you make a
list of polygons in front to back order, using the BSP trees.  You
traverse each polygon from back to front.  If the coordinates change, you
fill in the newly covered areas with the polygon's color.  For the pixels
which are "uncovered", you cast a ray through the polygon list, starting
with the one ofter this polygon.

I guess I'll have to try both methods and see which works well for my data.

> In a Descent/Doom/Marathon/Quake like environment, you would want to cull
> as many polygons as is possible before they reach the final stages of the
> pipeline. The use of visibility "portals" works well for this. Quake uses
> bitmaps to indicate what surfaces are potentially visible from a subspace.

I lost you here.  Can you explain?  What is a portal, and what do these
bitmaps represent?

-- 
Krishna
kant0031@gold.tc.umn.edu

+++++++++++++++++++++++++++

>From harper21@execpc.com (Jomom)
Date: 19 Sep 1996 22:31:22 GMT
Organization: Exec-PC BBS Internet - Milwaukee, WI

In article <nick-1609961349090001@news.ucla.edu>, nick@chem.ucla.edu (
nick.c ) wrote:

> jackw@cdc.net (Jack W) wrote:
> 
> >g-kendall@nwu.edu (Brian Kendall) writes:
> >
> >> I'm thinking of putting together a 3D maze game using polygon graphics. So
> >> far, I've been able to make a cube in 3D space and draw it to the screen.
> >> It also can be rotated in three dimensions very quickly.
> >
> >You might want to look at Black Art of Mac Game Programming
> >and Engines of Creation.
> 
> 
>    I haven't read the _Black Art_ book, but Engines is a kool book
>      and will help.  Also check out _Fast Algorithms_, it's expensive
>      (but worth it, IMHO).
> 
>        _Fast Algorithms for 3D-Graphics_ by Georg Glasser
>        Springer-Verlag, ISBN: 0-387-94288-2  
>     
>        _Engines of Creation_ by Jonathan Blossom
>        Waite Group Press, 1995, ISBN: 1-878739-90-5

I thought that Engines really sucked.
Sean

+++++++++++++++++++++++++++

>From Zachary C Jones <zcj+@andrew.cmu.edu>
Date: Fri, 20 Sep 1996 14:55:15 -0400
Organization: Freshman, Art, Carnegie Mellon, Pittsburgh, PA

Excerpts from netnews.comp.sys.mac.programmer.games: 19-Sep-96 Re: Help
with polygon graph.. by Jomom@execpc.com 
> In article <nick-1609961349090001@news.ucla.edu>, nick@chem.ucla.edu (
> nick.c ) wrote:
> 
> > jackw@cdc.net (Jack W) wrote:
> > 
> > >g-kendall@nwu.edu (Brian Kendall) writes:
> > >
> > >> I'm thinking of putting together a 3D maze game using polygon
graphics. So
> > >> far, I've been able to make a cube in 3D space and draw it to the
screen.
> > >> It also can be rotated in three dimensions very quickly.
> > >
> > >You might want to look at Black Art of Mac Game Programming
> > >and Engines of Creation.
> > 
> > 
> >    I haven't read the _Black Art_ book, but Engines is a kool book
> >      and will help.  Also check out _Fast Algorithms_, it's expensive
> >      (but worth it, IMHO).
> > 
> >        _Fast Algorithms for 3D-Graphics_ by Georg Glasser
> >        Springer-Verlag, ISBN: 0-387-94288-2  
> >     
> >        _Engines of Creation_ by Jonathan Blossom
> >        Waite Group Press, 1995, ISBN: 1-878739-90-5
> 
> I thought that Engines really sucked.
> Sean
I have The black Art of Mac Game Programming and IMHO it is bitchin'. 
And is new worht the $40 is calls for.

- ---------------------------<({[][][]})>--------------------------------
zcj@andrew.cmu.edu

"Any sufficiently advanced technology is indistinguishable from magic"
    -Arthur C. Clarke

"Any sufficiently detailed magic will appear to be a science
"    -?

http://quiff.res.cmu.edu 

+++++++++++++++++++++++++++

>From anders.backman@macademic.se (Anders Backman)
Date: Fri, 20 Sep 1996 21:03:45 +0200
Organization: Hemma

>snip
> >    I haven't read the _Black Art_ book, but Engines is a kool book
> >      and will help.  Also check out _Fast Algorithms_, it's expensive
> >      (but worth it, IMHO).
> > 
> >        _Fast Algorithms for 3D-Graphics_ by Georg Glasser
> >        Springer-Verlag, ISBN: 0-387-94288-2  
> >     
> >        _Engines of Creation_ by Jonathan Blossom
> >        Waite Group Press, 1995, ISBN: 1-878739-90-5
> 
> I thought that Engines really sucked.
> Sean

The _Black Art_ book is a fine flatshaded polygon renderer but the
chapters on texturemapping is a bit lame. For texturemapped polys try
Andrew Meggs excellent Screaming Cabala texturemapper with unbeatable
speed (and it's free too) or take a look at 3DGM GameMachine; a
texturemapping 6DOF commercial library with DXF import, collision
detection (which is actually harder to do fast than texturemapping
itself), fog, animated texmaps and lots of help for the gameprogrammer.
Only problem is that it's expensive.

Why should enginesw per se suck? A 3D engine is simply {;)} a buzzword for
someones 3D routines.

/Backman

+++++++++++++++++++++++++++

>From ingemar@lysator.liu.se (Ingemar Ragnemalm)
Date: 21 Sep 1996 06:52:11 GMT
Organization: (none)

anders.backman@macademic.se (Anders Backman) writes:

> For texturemapped polys try
>Andrew Meggs excellent Screaming Cabala texturemapper with unbeatable
>speed (and it's free too)

It is impressive, but poorly documented and as far as I can tell, a
programming interface that is somewhere betwen awkward and hopeless.
Feel free to argue against me, but has anyone made any hacks with it
where you have put in your own shapes?

>or take a look at 3DGM GameMachine; a
>texturemapping 6DOF commercial library with DXF import, collision
>detection (which is actually harder to do fast than texturemapping
>itself), fog, animated texmaps and lots of help for the gameprogrammer.
>Only problem is that it's expensive.

I don't find $200 particularly shocking for a lib like this. It is pretty
good, fairly well documented and not too hard to use, at least until you
want to get textures in. Getting the right texture on each polygon is rather
tedious. And it is fast.

--
- -
Ingemar Ragnemalm, PhD
Image processing, Mac shareware games
E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se

+++++++++++++++++++++++++++

>From ingemar@lysator.liu.se (Ingemar Ragnemalm)
Date: 21 Sep 1996 06:52:11 GMT
Organization: (none)

Reposting article removed by rogue canceller.

anders.backman@macademic.se (Anders Backman) writes:

> For texturemapped polys try
>Andrew Meggs excellent Screaming Cabala texturemapper with unbeatable
>speed (and it's free too)

It is impressive, but poorly documented and as far as I can tell, a
programming interface that is somewhere betwen awkward and hopeless.
Feel free to argue against me, but has anyone made any hacks with it
where you have put in your own shapes?

>or take a look at 3DGM GameMachine; a
>texturemapping 6DOF commercial library with DXF import, collision
>detection (which is actually harder to do fast than texturemapping
>itself), fog, animated texmaps and lots of help for the gameprogrammer.
>Only problem is that it's expensive.

I don't find $200 particularly shocking for a lib like this. It is pretty
good, fairly well documented and not too hard to use, at least until you
want to get textures in. Getting the right texture on each polygon is rather
tedious. And it is fast.

--
- -
Ingemar Ragnemalm, PhD
Image processing, Mac shareware games
E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se

+++++++++++++++++++++++++++

>From nick@chem.ucla.edu ( nick.c @MT )
Date: Mon, 23 Sep 1996 13:25:32 -0800
Organization: MacTech Magazine



harper21@execpc.com (Jomom) wrote:

>nick@chem.ucla.edu ( nick.c ) wrote:
>
>> jackw@cdc.net (Jack W) wrote:

>> >You might want to look at Black Art of Mac Game Programming
>> >and Engines of Creation.
>> 
>>    I haven't read the _Black Art_ book, but Engines is a kool book
>>      and will help.  Also check out _Fast Algorithms_, it's expensive
>>      (but worth it, IMHO).
>> 
>>        _Fast Algorithms for 3D-Graphics_ by Georg Glasser
>>        Springer-Verlag, ISBN: 0-387-94288-2  
>>     
>>        _Engines of Creation_ by Jonathan Blossom
>>        Waite Group Press, 1995, ISBN: 1-878739-90-5
>
>I thought that Engines really sucked.
>                                   Sean


   Sean,

      I think Engines is a pretty kool book--but I'm curious
        about why you didn't like it?  ie why do you think it
        sucked (honest question)?

____Nicholas C. DeMello, Ph.D.________________________________________

  Online for MacTech Magazine, the Journal of Macintosh Programming
     http://www.MacTech.com/
                                       _/   _/  _/  _/_/_/   _/   _/  
  Chemistry: Nick@chem.UCLA.edu       _/_/ _/  _/  _/   _/  _/_/_/ 
    MacTech: Online@MacTech.com      _/ _/_/  _/  _/       _/ _/    
       http://www.chem.ucla.edu/~nick/   _/  _/   _/_/_/  _/   _/     

---------------------------

>From Tim Burress <tim@twics.com>
Subject: How to determine volume-directory of current application?
Date: 20 Sep 1996 20:44:03 GMT
Organization: TWICS - Tokyo Public Access Internet

I need to be able to find the volume and directory IDs of the current
application, without necessarily knowing the name of the application or
how it was launched. Is there a good way to do this? The background is
that I want to store some application-specific index files and data
structures in a folder that will be inside the same folder that contains
the application. I could just use a relative path name, but IM leaves me
wondering if that will always work, especially in cases where the user
may have double-clicked on a document that is stored somewhere else, or
where the application is responding to an Apple Event.

I've noticed that some applications, like Eudora, Netscape, and Nuntius,
place folders for this kind of stuff inside the Preferences folder, but
that doesn't seem like a very clean solution.

If you have any ideas, I'd appreciate a note, either by E-mail or here in
this group. Thanks!

Tim

+++++++++++++++++++++++++++

>From jumplong@aol.com (Jump Long)
Date: 21 Sep 1996 02:59:42 -0400
Organization: America Online, Inc. (1-800-827-6364)

>I need to be able to find the volume and directory IDs of the
>current application, without necessarily knowing the name of the
>application or how it was launched. Is there a good way to do
>this? The background is that I want to store some
>application-specific index files and data structures in a folder
>that will be inside the same folder that contains the
>application. I could just use a relative path name, but IM
>leaves me wondering if that will always work, especially in
>cases where the user may have double-clicked on a document that
>is stored somewhere else, or where the application is responding
>to an Apple Event.

The Macintosh Programming FAQ covers this topic in the Files section with
sample code. The exact URL to that Q&A is
<http://www.best.com/~ckt/faq/Four.html#18>.

- Jim Luther

+++++++++++++++++++++++++++

>From jumplong@aol.com (Jump Long)
Date: 21 Sep 1996 02:59:42 -0400
Organization: America Online, Inc. (1-800-827-6364)

Reposting article removed by rogue canceller.

>I need to be able to find the volume and directory IDs of the
>current application, without necessarily knowing the name of the
>application or how it was launched. Is there a good way to do
>this? The background is that I want to store some
>application-specific index files and data structures in a folder
>that will be inside the same folder that contains the
>application. I could just use a relative path name, but IM
>leaves me wondering if that will always work, especially in
>cases where the user may have double-clicked on a document that
>is stored somewhere else, or where the application is responding
>to an Apple Event.

The Macintosh Programming FAQ covers this topic in the Files section with
sample code. The exact URL to that Q&A is
<http://www.best.com/~ckt/faq/Four.html#18>.

- Jim Luther

---------------------------


+++++++++++++++++++++++++++

>From Stephen.Jonke@gsfc.nasa.gov (Stephen Jonke)
Date: Tue, 17 Sep 1996 10:06:00 -0400
Organization: NASA Goddard Space Flight Center -- Greenbelt, Maryland USA

At 1:52 AM -0400 9/17/96, Clark Martin wrote:
> 
> tell application "Finder" on machine "Remote Mac"  -- that may be 'of'
> instead of 'on', I never can remember
>    open file "TheApp" of folder "Applications" of disk "The Disk"
> end tell

Is there any way to do this without need to hardcode the path?  In other
words I want the remote Mac to do the work of locating the application
just like when on my local Mac if I double click a ClarisWorks document
the Mac opens the ClarisWorks application - it knows where the application
is and launches it.

On a related note, why is that AppleScripts require you to manually find
the application you specify in a tell statement?  Similar to the
ClarisWorks document example, it seems that it ought to be able to figure
this out on its own, no?

Steve

-- 
Seen in computer peripheral ad: "User-friendly dip switches!"

+++++++++++++++++++++++++++

>From cmartin@rahul.net (Clark Martin)
Date: Mon, 16 Sep 1996 22:52:45 -0700
Organization: a2i network

In article <Stephen.Jonke-1609961722260001@joe.gsfc.nasa.gov>,
Stephen.Jonke@gsfc.nasa.gov (Stephen Jonke) wrote:

> What is the proper way to launch an application on a remote Mac with an
> AppleScript?  Keep in mind that when you script things remotely you can't
> tell an application to do something unless it is *already* running.  At
> least not as far as I can tell.
> 
> Trying to tell the Finder on the remote machine to open application
> "SomeApp" doesn't work because when you compile the script the script
> editor asks you to locate the application on the local Mac!
> 
> Please email responses in addition to (or instead of) posting.  Thanks,


Something like:

tell application "Finder" on machine "Remote Mac"  -- that may be 'of'
instead of 'on', I never can remember
   open file "TheApp" of folder "Applications" of disk "The Disk"
end tell

-- 
Clark Martin
Macintosh Consultant
Redwood City, CA, USA
Another designated driver on the Information Super Highway.

+++++++++++++++++++++++++++

>From jelemans@aurora-net.com (john elemans)
Date: Wed, 18 Sep 1996 11:19:20 -0800
Organization: hundred peaches inc

Try,..

  open file "TheApp" of folder "Applications" of the startup disk


In article <Stephen.Jonke-1709961006010001@joe.gsfc.nasa.gov>,
Stephen.Jonke@gsfc.nasa.gov (Stephen Jonke) wrote:

> At 1:52 AM -0400 9/17/96, Clark Martin wrote:
> > 
> > tell application "Finder" on machine "Remote Mac"  -- that may be 'of'
> > instead of 'on', I never can remember
> >    open file "TheApp" of folder "Applications" of disk "The Disk"
> > end tell
> 
> Is there any way to do this without need to hardcode the path?  In other
> words I want the remote Mac to do the work of locating the application
> just like when on my local Mac if I double click a ClarisWorks document
> the Mac opens the ClarisWorks application - it knows where the application
> is and launches it.
> 
> On a related note, why is that AppleScripts require you to manually find
> the application you specify in a tell statement?  Similar to the
> ClarisWorks document example, it seems that it ought to be able to figure
> this out on its own, no?
> 
> Steve
> 
> -- 
> Seen in computer peripheral ad: "User-friendly dip switches!"

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:40:47 GMT
Organization: Will hack for food

Stephen Jonke (Stephen.Jonke@gsfc.nasa.gov) wrote:
> At 1:52 AM -0400 9/17/96, Clark Martin wrote:
> > 
> > tell application "Finder" on machine "Remote Mac"  -- that may be 'of'
> > instead of 'on', I never can remember
> >    open file "TheApp" of folder "Applications" of disk "The Disk"
> > end tell

> Is there any way to do this without need to hardcode the path?  In other
> words I want the remote Mac to do the work of locating the application
> just like when on my local Mac if I double click a ClarisWorks document
> the Mac opens the ClarisWorks application - it knows where the application
> is and launches it.

This works:

tell application "Finder" of machine "Office in a Box"
    open application file id "R*ch"
end tell


> On a related note, why is that AppleScripts require you to manually find
> the application you specify in a tell statement?  Similar to the
> ClarisWorks document example, it seems that it ought to be able to figure
> this out on its own, no?

This is just a bug.  It's not supposed to ask so much and it will be fixed 
some day.

Jon

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:40:47 GMT
Organization: Will hack for food

Reposting article removed by rogue canceller.

Stephen Jonke (Stephen.Jonke@gsfc.nasa.gov) wrote:
> At 1:52 AM -0400 9/17/96, Clark Martin wrote:
> > 
> > tell application "Finder" on machine "Remote Mac"  -- that may be 'of'
> > instead of 'on', I never can remember
> >    open file "TheApp" of folder "Applications" of disk "The Disk"
> > end tell

> Is there any way to do this without need to hardcode the path?  In other
> words I want the remote Mac to do the work of locating the application
> just like when on my local Mac if I double click a ClarisWorks document
> the Mac opens the ClarisWorks application - it knows where the application
> is and launches it.

This works:

tell application "Finder" of machine "Office in a Box"
    open application file id "R*ch"
end tell


> On a related note, why is that AppleScripts require you to manually find
> the application you specify in a tell statement?  Similar to the
> ClarisWorks document example, it seems that it ought to be able to figure
> this out on its own, no?

This is just a bug.  It's not supposed to ask so much and it will be fixed 
some day.

Jon

---------------------------

>From Graham Cox <graham@impro.demon.co.uk>
Subject: Learn C++ on the Mac with MacZoop- new website
Date: Mon, 23 Sep 1996 09:37:54 +0100
Organization: Image Processing and Vision UK Ltd.

If you are a Mac developer looking for a small, simple C++ framework, 
or a beginner looking to get into C++ on the Mac, check out:

http://www.warwick.ac.uk/~corbe/MacZoop/MacZoop.html

There is no commercial interest in this site or MacZoop- this is 
"pure" freeware.

regrads, Graham Cox, MacZoop author.

---------------------------

>From glhansen@copper.ucs.indiana.edu (Gregory Loren Hansen)
Subject: MacMkLinux Freezes
Date: 21 Sep 1996 22:38:00 GMT
Organization: Indiana University, Bloomington


I've finally recieved the MacMkLinux DR2 CD, installed it on my computer,
and when I try to boot it freezes.  It starts out fine, gets to the
MkLinux splash where it gives you the option of booting MacOS or Linux.
If I boot MacOS it's fine.  If I boot Linux, the whole computer freezes.
The mouse doesn't move any more, I can't hear the hard drive spinning.
ctrl-apple-reset still works.

I have a Power100, an SVGA monitor plugged into the SVGA port of the video
card that came with my computer, 40 megs RAM.  I have 64megs swap, 300
megs /root, and 400 megs /usr.  

My MacOS drive has SCSI ID 0, and my MkLinux drive has SCSI ID 1.  The
MacOS drive is the currently selected boot drive.  'There are five
partitions total on my Linux drive, I have nothing plugged into the SCSI
port, I have a CD-ROM drive at SCSI ID 3.  And I'm plugged into the school
ethernet, but I haven't gotten as far as setnet yet.

What am I doing wrong?


+++++++++++++++++++++++++++

>From ericb@pobox.com (Eric Bennett)
Date: 22 Sep 1996 03:38:39 GMT
Organization: Penn State

In article <521qo8$58p@dismay.ucs.indiana.edu>
glhansen@copper.ucs.indiana.edu (Gregory Loren Hansen) writes:

> I have a Power100, an SVGA monitor plugged into the SVGA port of the video
> card that came with my computer, 40 megs RAM.  I have 64megs swap, 300
> megs /root, and 400 megs /usr.  
> 
> My MacOS drive has SCSI ID 0, and my MkLinux drive has SCSI ID 1.  The
> MacOS drive is the currently selected boot drive.  'There are five
> partitions total on my Linux drive, I have nothing plugged into the SCSI
> port, I have a CD-ROM drive at SCSI ID 3.  And I'm plugged into the school
> ethernet, but I haven't gotten as far as setnet yet.

I haven't been following MkLinux much lately since I just upgraded to a
PCI machine that MkLinux doesn't support, but...

* make sure you use the proper partition numbering scheme (MkLinux and
the MacOS, including the Mac SCSI utility you used to partition the
MkLinux drive, use different numbering schemes.  One of them starts
numbering with 0, the other starts with 1.  This used to be in the
MkLinux docs).

* MkLinux video support has been rather spotty for nonstandard video. 
Macs with AV cards were not supported at all for awhile.  Perhaps the
VGA port on Power Computing machines is not supported.

You might consider subscribing to MkLinux mailing lists and asking
about your problems there.  See
http://mklinux.apple.com/forms/subscribe.html for info.

-Eric Bennett (ericb@pobox.com; http://www.pobox.com/~ericb)

Drawing on my fine command of the language, I said nothing.
-Robert Benchley

+++++++++++++++++++++++++++

>From ericb@pobox.com (Eric Bennett)
Date: 22 Sep 1996 03:38:39 GMT
Organization: Penn State

Reposting article removed by rogue canceller.

In article <521qo8$58p@dismay.ucs.indiana.edu>
glhansen@copper.ucs.indiana.edu (Gregory Loren Hansen) writes:

> I have a Power100, an SVGA monitor plugged into the SVGA port of the video
> card that came with my computer, 40 megs RAM.  I have 64megs swap, 300
> megs /root, and 400 megs /usr.  
> 
> My MacOS drive has SCSI ID 0, and my MkLinux drive has SCSI ID 1.  The
> MacOS drive is the currently selected boot drive.  'There are five
> partitions total on my Linux drive, I have nothing plugged into the SCSI
> port, I have a CD-ROM drive at SCSI ID 3.  And I'm plugged into the school
> ethernet, but I haven't gotten as far as setnet yet.

I haven't been following MkLinux much lately since I just upgraded to a
PCI machine that MkLinux doesn't support, but...

* make sure you use the proper partition numbering scheme (MkLinux and
the MacOS, including the Mac SCSI utility you used to partition the
MkLinux drive, use different numbering schemes.  One of them starts
numbering with 0, the other starts with 1.  This used to be in the
MkLinux docs).

* MkLinux video support has been rather spotty for nonstandard video. 
Macs with AV cards were not supported at all for awhile.  Perhaps the
VGA port on Power Computing machines is not supported.

You might consider subscribing to MkLinux mailing lists and asking
about your problems there.  See
http://mklinux.apple.com/forms/subscribe.html for info.

-Eric Bennett (ericb@pobox.com; http://www.pobox.com/~ericb)

Drawing on my fine command of the language, I said nothing.
-Robert Benchley

---------------------------

>From pthomann@ripco.com (Paul Thomann)
Subject: Macsbug questions
Date: Sun, 22 Sep 1996 01:53:58 GMT
Organization: Ripco Internet BBS Chicago

Since the 7200/90 I use freezes up far more often than I'd like.  I was
wondering whether trying to hone in on the problem app's (or memory
locations) would be something appropriate to do with Macsbug.  And if so
is there a good reference book about how to use Macsbug?  Many thanks in
advance.

-- 
pthomann@ripco.com         |   You can never have to much
Chicago, USA               |   shelving or closet space.

+++++++++++++++++++++++++++

>From david@interport.net (David)
Date: 22 Sep 1996 01:26:40 -0400
Organization: Interport Communications Corp.

Paul Thomann (pthomann@ripco.com) wrote:
: Since the 7200/90 I use freezes up far more often than I'd like.  I was
: wondering whether trying to hone in on the problem app's (or memory
: locations) would be something appropriate to do with Macsbug.  And if so

I don't think MB will be of much use to you here; if it's an application,
you should be able to tell when it crashes; if it's an extension or system
problem, diagnosing it with MB will require a very thorough knowledge of
Mac assembly. 

I'd recommend Cassady&Greene's Conflict Catcher software. If you really
have some reproducible evil in your combination of software, it will be
able to figure it out.

Apple has a little text file with MB, I believe, which describes the
basics. Just for the es (quit current app) and rs (restart) commands,
everyone should have it installed. But using it seriously is basically a
propellorhead thing.

David |-:)

+++++++++++++++++++++++++++

>From "Thomas L. Ferrell" <ferrelltl@ornl.gov>
Date: 22 Sep 1996 05:46:31 GMT
Organization: Oak Ridge National Lab

pthomann@ripco.com (Paul Thomann) wrote:
>Since the 7200/90 I use freezes up far more often than I'd like.  I was
>wondering whether trying to hone in on the problem app's (or memory
>locations) would be something appropriate to do with Macsbug.  And if >so is there a good reference book about how to use Macsbug? =
 Many >thanks in advance.
>-- 
>pthomann@ripco.com         |   You can never have to much
>Chicago, USA               |   shelving or closet space.


Hi, You should first try some easier things. Upgrade to 7.5.5 if you haven't done so. Zap your PRAM 3-4 times. Use Extensions Manage=
r to turn off half your non-essential extensions, reboot and see if the problem persists. If not, you have an extension conflict in =
the remaining half. Turn on half of these, reboot and so on. Have you rebuilt your desktop in the past few months? If the above is n=
o help, then try to see what things are most suspect and use Macsbug as a last resort. You can get info at
http://www.scruz.net/~crawford/Computers/macsbug.html
Good Luck,
tom


+++++++++++++++++++++++++++

>From yoram_n@netvision.net.il (Yoram Ney)
Date: 22 Sep 1996 17:22:19 GMT
Organization: NetVision LTD.

In article <pthomann-2109962054140001@192.0.2.1>, pthomann@ripco.com (Paul
Thomann) wrote:

>Since the 7200/90 I use freezes up far more often than I'd like.  I was
>wondering whether trying to hone in on the problem app's (or memory
>locations) would be something appropriate to do with Macsbug.  And if so
>is there a good reference book about how to use Macsbug?  Many thanks in
>advance.

I've been using Apple's "MacsBug Reference and Debugging Guide", though I
must admit I would have loved to see a book that is to Macsbug what Scott
Knaster's books are to the Mac.
  Apple's "MacsBug Reference and Debugging Guide" certainly covers Macsbug
well for conventional use. However:

 * Quite a number of new features have been added to Macsbug (notably 
   PowerPC support) since this book was published. While Macsbug's
   inbuilt 'Help' mechanism is always up to date, this is hardly a nice
   way to welcome anyone into the Mac-debugging world. An up-to-date
   version of Apple's Reference book is certainly in place if not
   overdue.

 * It is usually _not_ very long before you hit Macsbug's limits,
   (or at least before they come into sight) so if any of the non-Apple 
   books (e.g. Otmer and Strauss "Debugging Mac Software with
   Macsbug") have "insiders' secrets" I would certainly give them a
   browse for possible extension of Macsbug fundamental capabilities.

I'd use conventional methods of figuring crashes out, i.e. conflict isolation
and/or installation of new system software before plunging into
the Assembly jungle of programs you don't have the source for.

If you nontheless want to go about it the low-level way, you can put
Macsbug in the System Folder anyway, and keep some record of WHere the
crashes occur, to see whether there's any rule in them at all, then take
it from there.
  For example, you can write a macro to log where a crash occured,
register state, and the stack call-chain, then put it in the prefs to make
it permanent. e.g.:

  mc myMacroName 'log myPathName; WH; TD; SC; log'

You may also want to have traps recording on, then play it back (ATP) into
the log.

There's a way of making a macro execute each time the debugger is
dropped into, but the manual's back home + I can't remember exactly
how (but I guess it would be some messing with the prefs file).

I guess that's it 4 now. Hope this helps.

-- 
                        _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
                       _/          Yoram Ney           _/
                      _/   yoram_n@netvision.net.il   _/
                     _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

+++++++++++++++++++++++++++

>From "Thomas L. Ferrell" <ferrelltl@ornl.gov>
Date: 22 Sep 1996 05:46:31 GMT
Organization: Oak Ridge National Lab

Reposting article removed by rogue canceller.

pthomann@ripco.com (Paul Thomann) wrote:
>Since the 7200/90 I use freezes up far more often than I'd like.  I was
>wondering whether trying to hone in on the problem app's (or memory
>locations) would be something appropriate to do with Macsbug.  And if >so is there a good reference book about how to use Macsbug? =
 Many >thanks in advance.
>-- 
>pthomann@ripco.com         |   You can never have to much
>Chicago, USA               |   shelving or closet space.


Hi, You should first try some easier things. Upgrade to 7.5.5 if you haven't done so. Zap your PRAM 3-4 times. Use Extensions Manage=
r to turn off half your non-essential extensions, reboot and see if the problem persists. If not, you have an extension conflict in =
the remaining half. Turn on half of these, reboot and so on. Have you rebuilt your desktop in the past few months? If the above is n=
o help, then try to see what things are most suspect and use Macsbug as a last resort. You can get info at
http://www.scruz.net/~crawford/Computers/macsbug.html
Good Luck,
tom


+++++++++++++++++++++++++++

>From david@interport.net (David)
Date: 22 Sep 1996 01:26:40 -0400
Organization: Interport Communications Corp.

Reposting article removed by rogue canceller.

Paul Thomann (pthomann@ripco.com) wrote:
: Since the 7200/90 I use freezes up far more often than I'd like.  I was
: wondering whether trying to hone in on the problem app's (or memory
: locations) would be something appropriate to do with Macsbug.  And if so

I don't think MB will be of much use to you here; if it's an application,
you should be able to tell when it crashes; if it's an extension or system
problem, diagnosing it with MB will require a very thorough knowledge of
Mac assembly. 

I'd recommend Cassady&Greene's Conflict Catcher software. If you really
have some reproducible evil in your combination of software, it will be
able to figure it out.

Apple has a little text file with MB, I believe, which describes the
basics. Just for the es (quit current app) and rs (restart) commands,
everyone should have it installed. But using it seriously is basically a
propellorhead thing.

David |-:)

---------------------------

>From kirill@lava.net (Kirill)
Subject: Opening Control Panel
Date: Mon, 16 Sep 1996 00:47:25 -1000
Organization: LavaNet, Inc.

I would like to open a control panel from my application. I have an FSSpec
for the control panel. I have tried LaunchApplication() but that did not
work (which, sadly, makes sense). I've also tried sending 'odoc' and
'oapp' AppleEvents to the Finder, all to no avail.

Can anyone point me to some code that does this or offer a simple
solution? Thanks in advance.

-- kirill

+++++++++++++++++++++++++++

>From Eric Shieh <erics@edify.com>
Date: Tue, 17 Sep 1996 12:52:30 -0700
Organization: Edify Corporation

Kirill wrote:
> 
> I would like to open a control panel from my application. I have an FSSpec
> for the control panel. I have tried LaunchApplication() but that did not
> work (which, sadly, makes sense). I've also tried sending 'odoc' and
> 'oapp' AppleEvents to the Finder, all to no avail.
> 
The Finder doesn't take ODOC events. Instead, it takes OpenSelection
events. You create the appleevent, stick on an alias/FSSpec to a
folder containing the items to be opened (in this case the control
panels folder) and then stick on the list of items to be opened.


Eric

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:18:44 GMT
Organization: Will hack for food

Kirill (kirill@lava.net) wrote:
> I would like to open a control panel from my application. I have an FSSpec
> for the control panel. I have tried LaunchApplication() but that did not
> work (which, sadly, makes sense). I've also tried sending 'odoc' and
> 'oapp' AppleEvents to the Finder, all to no avail.

Check out the Apple sample code pages.  There's at least 2 samples on the 
IAC page alone.

http://devworld.apple.com/dev/techsupport/source/code/Snippets/IAC.html

Jon

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:18:44 GMT
Organization: Will hack for food

Reposting article removed by rogue canceller.

Kirill (kirill@lava.net) wrote:
> I would like to open a control panel from my application. I have an FSSpec
> for the control panel. I have tried LaunchApplication() but that did not
> work (which, sadly, makes sense). I've also tried sending 'odoc' and
> 'oapp' AppleEvents to the Finder, all to no avail.

Check out the Apple sample code pages.  There's at least 2 samples on the 
IAC page alone.

http://devworld.apple.com/dev/techsupport/source/code/Snippets/IAC.html

Jon

---------------------------

>From feltmate@nb.net (Michael A Feltmate)
Subject: Pascal compiler
Date: Mon, 23 Sep 1996 22:37:36 -0400
Organization: Feltmate Family

Does anybody know of a good cheap pascal compiler?  (preferably shareware
or freeware)  Please reply.  Thanx!!!

+++++++++++++++++++++++++++

>From Online@MacTech.com ( nick.c @MT )
Date: Tue, 24 Sep 1996 22:42:00 -0800
Organization: MacTech Magazine


feltmate@nb.net (Michael A Feltmate) wrote:

>Does anybody know of a good cheap pascal compiler?  (preferably shareware
>or freeware)  Please reply.  Thanx!!!


   Dunno 'bout shareware of freeware--but MW Pascal (part of the CW
     package) and Symantec's Think Pascal are good deals.  You can
     probably pick up a license for an old copy of Think Pascal 
     in the 'forsale' groups for $30 or so....

____Nicholas C. DeMello, Ph.D.________________________________________

  Online for MacTech Magazine, the Journal of Macintosh Programming
     http://www.MacTech.com/
                                       _/   _/  _/  _/_/_/   _/   _/  
  Chemistry: Nick@chem.UCLA.edu       _/_/ _/  _/  _/   _/  _/_/_/ 
    MacTech: Online@MacTech.com      _/ _/_/  _/  _/       _/ _/    
       http://www.chem.ucla.edu/~nick/   _/  _/   _/_/_/  _/   _/     

+++++++++++++++++++++++++++

>From Online@MacTech.com ( nick.c @MT )
Date: Tue, 24 Sep 1996 22:42:00 -0800
Organization: MacTech Magazine


feltmate@nb.net (Michael A Feltmate) wrote:

>Does anybody know of a good cheap pascal compiler?  (preferably shareware
>or freeware)  Please reply.  Thanx!!!


   Dunno 'bout shareware of freeware--but MW Pascal (part of the CW
     package) and Symantec's Think Pascal are good deals.  You can
     probably pick up a license for an old copy of Think Pascal 
     in the 'forsale' groups for $30 or so....

____Nicholas C. DeMello, Ph.D.________________________________________

  Online for MacTech Magazine, the Journal of Macintosh Programming
     http://www.MacTech.com/
                                       _/   _/  _/  _/_/_/   _/   _/  
  Chemistry: Nick@chem.UCLA.edu       _/_/ _/  _/  _/   _/  _/_/_/ 
    MacTech: Online@MacTech.com      _/ _/_/  _/  _/       _/ _/    
       http://www.chem.ucla.edu/~nick/   _/  _/   _/_/_/  _/   _/     

---------------------------

>From Greg Hale <glink@fireball.blast.net>
Subject: Picture Help!
Date: Sat, 21 Sep 1996 18:46:59 GMT
Organization: Home

In C, how do you display a PICT in a window?  I asked someone before and 
they said to use DrawPicture() and I tried that but I can't figure out 
what to put in the ()'s.
Thanx in advance
--Greg Hale

+++++++++++++++++++++++++++

>From Russ Hendy <Russ@tui.co.uk>
Date: Mon, 23 Sep 1996 12:24:40 +0000
Organization: tui interactive media

Greg - 

Well, if you're drawing a PICT that's a Resource, do this :

#include <QuickDraw.h>

void
DrawPICTFromResource(ResIDT inResourceID, int x, int y)
{
	Rect		pictureBounds;
	PicHandle	hPic;

	hPic = ::GetPicture(inResourceID);


	if(hPic) {

		// set the rect to the same as that of the picture. You can
		// scale here if you like
		pictureBounds = (*hPic)->picFrame;

		::DrawPicture(hPic, &pictureBounds);

	}

	// don't forget to lose that memory
	::ReleaseResource((Handle) hPic);
} 



I think that's about right. If you want to draw from a file, use the
DrawPictureFile() function.

Best Regards,
Russ.

---------------------------

>From "Ala'a H. Jawad" <aljawad@kuwait.net>
Subject: Q: Inside Macintosh CD-ROM
Date: Sat, 21 Sep 1996 00:24:01 +0400
Organization: Jupiter and Beyond the Infinite

Good Day!

Is the "Inside Macintosh" series available on CD-ROM? 

TIA :-)



Best regards,
-A l a ' a

+++++++++++++++++++++++++++

>From bishopsys@aol.com (Matt Bishop)
Date: Sat, 21 Sep 1996 01:32:01 -0500
Organization: Bishop Shareware

In article <3242FD61.4A1@kuwait.net>, aljawad@kuwait.net wrote:

> Good Day!
> 
> Is the "Inside Macintosh" series available on CD-ROM? 
> 
> TIA :-)

The MacTech CD ROM is useful for me.  It has all the managers/function
calls in a very fast search engine that is hyperlinked all over the
place.  It has saved me days of time searching for answers to questions or
prototypes for toolbox calls.

It also has every issue for the past 11 years of MacTech magazine,
searchable by topic/date/author/etc.  It is worth every penny!

-Matt

+++++++++++++++++++++++++++

>From gregj@europa.com (Greg Jorgensen)
Date: Mon, 23 Sep 1996 01:28:40 -0800
Organization: Europa Communications, Inc, Portland Oregon USA

In article <3242FD61.4A1@kuwait.net>, aljawad@kuwait.net wrote:

>Good Day!
>
>Is the "Inside Macintosh" series available on CD-ROM? 

Yes, it's published by Addison-Wesley, and costs about $100. You can buy
it from the usual places or any bookstore. Computer Literacy Books
(www.clbooks.com) should have it in stock.

-- 
Greg Jorgensen - Portland, Oregon, USA - gregj@europa.com

"I tell you, we are here on Earth to fart around, and don't let anyone tell you any different." -- Kurt Vonnegut

+++++++++++++++++++++++++++

>From nick@chem.ucla.edu ( nick.c @MT )
Date: Mon, 23 Sep 1996 12:22:06 -0800
Organization: MacTech Magazine


bishopsys@aol.com (Matt Bishop) wrote:

>aljawad@kuwait.net wrote:
>
>> Good Day!
>> 
>> Is the "Inside Macintosh" series available on CD-ROM? 
>> 
>> TIA :-)
>
>The MacTech CD ROM is useful for me.  It has all the managers/function
>calls in a very fast search engine that is hyperlinked all over the
>place.  It has saved me days of time searching for answers to questions or
>prototypes for toolbox calls.
>
>It also has every issue for the past 11 years of MacTech magazine,
>searchable by topic/date/author/etc.  It is worth every penny!


   
     The MacTech CD is very kool and it's a superset of Think Reference
        using the Think Reference engine to access all the toolbox
        functions included in the TR data bases as well as the
        MT journal articles for a more detailed discussion.  I'm
        kind of biased--but I tend to agree with Matt that it's
        worth every penny.  More details on it are available at:
       
              <http://web.xplain.com/mactech.com/cdrom/>

     But to answer your original question: Yes the NIM is available
       on CD Rom--it's also DL'able from Apple's Web site.  NIM
       is useful for a different reason that the MacTech CD (IMHO).
       The MT CD gives you a brief overview of syntax and usage of
       toolbox functions (as well as examples), and the articles
       give you more detailed discussion of concepts.  But NIM gives
       you exhaustive detail on the functions.  Sometimes you need
       that, and it's useful to have access to the NIM.

____Nicholas C. DeMello, Ph.D.________________________________________

  Online for MacTech Magazine, the Journal of Macintosh Programming
     http://www.MacTech.com/
                                       _/   _/  _/  _/_/_/   _/   _/  
  Chemistry: Nick@chem.UCLA.edu       _/_/ _/  _/  _/   _/  _/_/_/ 
    MacTech: Online@MacTech.com      _/ _/_/  _/  _/       _/ _/    
       http://www.chem.ucla.edu/~nick/   _/  _/   _/_/_/  _/   _/     

+++++++++++++++++++++++++++

>From "Thomas L. Ferrell" <ferrelltl@ornl.gov>
Date: 21 Sep 1996 00:41:09 GMT
Organization: Oak Ridge National Lab

Reposting article removed by rogue canceller.

"Ala'a H. Jawad" <aljawad@kuwait.net> wrote:
>Good Day!
>
>Is the "Inside Macintosh" series available on CD-ROM? 
>
>TIA :-)

>Best regards,
>-A l a ' a

Yes. Go to <http://www.devworld.apple.com/> and check out their products 
for developers. I find it handy to also have at least a few of the books 
in hardcopy. You might also check out comp.sys.mac.wanted to look for 
used stuff,but be careful not to get outdated material unless you 
expressly need it. tom



---------------------------

>From Grayson Muir <grayson@xmission.com>
Subject: QuickDrawGX's future...
Date: Fri, 13 Sep 1996 22:17:46 -0600
Organization: XMission Internet (801 539 0900)

What are Apple's plans for QuickDrawGX now that they have scrapped
Copland(OS 8) in favor of incremental upgrades. I thought Copland was
supposed to totally rely on QuickDrawGX. What a wonderful technology,
it's a shame to see it whither away(I hope not).
-- 
Grayson Muir <grayson@xmission.com>
http://www.xmission.com/~grayson/TheLostBoys/TheLostBoys.html


+++++++++++++++++++++++++++

>From dke@adnc.com (David Every)
Date: Fri, 13 Sep 1996 23:12:16 -0800
Organization: adnc.com

In article <323A31E7.7231@xmission.com>, grayson@xmission.com wrote:

| What are Apple's plans for QuickDrawGX now that they have scrapped
| Copland(OS 8) in favor of incremental upgrades. I thought Copland was
| supposed to totally rely on QuickDrawGX. What a wonderful technology,
| it's a shame to see it whither away(I hope not).

Rumor is that they have a DLL version of GX that you will be able to
bundle with your Apps individually - though it will likely be installed as
part of the system.

There are also some advocates for Apple to include it with their QuickTime
engine - or to include it as a cross platform graphics rendering engine
for internet. 

The newer GX is smaller, faster, and feeds the pets ;-)
--
David K. Every 
MacKiDo Warrior - The Power of the Macintosh Way!
--
©1996 DKE. Non-exclusive, royalty free license to distribute is granted to any service provider except Microsoft. By distributing this, Microsoft agrees to pay $1,000 per posting.

+++++++++++++++++++++++++++

>From "Lawson English" <english@primenet.com>
Date: 14 Sep 1996 00:01:03 -0700
Organization: Primenet Services for the Internet

>What are Apple's plans for QuickDrawGX now that they have scrapped
>Copland(OS 8) in favor of incremental upgrades. I thought Copland was
>supposed to totally rely on QuickDrawGX. What a wonderful technology,
>it's a shame to see it whither away(I hope not).

Check out the Electrifier plug-in at http://www.electrifier.com

some of us are hoping that Apple will commit to sharing GX with the rest of
the world as a new paradigm for Internet graphics that I've nick-named
"Apple Internet Graphics."

A.I.G. ala Electrifier allows for extremely sophisticated graphics that
download in as little as 1% of the time that the equivalent using standard
bit-mapped graphics would take.

A.I.G. could use a file format that would replace HTML and allow
professional-level DTP to take place on the Internet.

A.I.G., with a trivial extension to what GX already offers, could allow for
animated fonts, shapes, textures, etc., that wouldn't take but a second or
so longer to download than their static equivalent (you'd just embed a
script/Java applet in the shape that would execute during idle time in the
browser).

A.I.G. would allow shapes/texts/plug-ins to *talk* to each other and allow
user interaction as well.

A.I.G. could become the alternative high-end standard for Java.

A.I.G. has generated lots of public flames and lots of private kudos for
moi on the semper.fi mailing list.

A.I.G. may or may not happen. I understand that all the Apple bigwigs have
debated the idea since I first introduced it (actually, I suspect that they
came up with it on their own some time ago but that internal politics
pretty much killed it until I got noisy).

A.I.G., if done right, would be the most spectacular marketing action ever
done by Apple: it would automatically make it a *Major* player on the
Internet.




- -------------------------------------------------
This message was created and sent using the Cyberdog Mail System
- -------------------------------------------------




+++++++++++++++++++++++++++

>From Grayson Muir <grayson@xmission.com>
Date: Sat, 14 Sep 1996 04:23:10 -0600
Organization: XMission Internet (801 539 0900)

Yes!!! All hail A.I.G! It sounds mind-blowingly fantastic. Apple could
dominate like never before with this technology under their belt, that
is unless they failed to promote it adequately as they've done with all
of their other superior technology(even QuickTime which won by default).
-- 
Grayson Muir <grayson@xmission.com>
http://www.xmission.com/~grayson/TheLostBoys/TheLostBoys.html


+++++++++++++++++++++++++++

>From "Lawson English" <english@primenet.com>
Date: 14 Sep 1996 22:56:02 -0700
Organization: Primenet Services for the Internet


--Cyberdog-AltBoundary-00037B8D
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

>that
>is unless they failed to promote it adequately as they've done with
all
>of their other superior technology(even QuickTime which won by
default).

And thereby hangs the tale, eh?


- -------------------------------------------------
This message was created and sent using the Cyberdog Mail System
- -------------------------------------------------



--Cyberdog-AltBoundary-00037B8D
Content-Type: multipart/mixed; boundary="Cyberdog-MixedBoundary-00037B8D"
Content-Transfer-Encoding: 7bit


--Cyberdog-MixedBoundary-00037B8D
Content-Type: text/enriched; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<SMALLER><SMALLER><X-FONTSIZE><PARAM>9</PARAM><FIXED><FONTFAMILY><PARAM=
>Monaco</PARAM>>that

>is unless they failed to promote it adequately as they've done with
all

>of their other superior technology(even QuickTime which won by
default).</FONTFAMILY></FIXED></X-FONTSIZE></SMALLER></SMALLER><SMALLER=
><X-FONTSIZE><PARAM>10</PARAM><FONTFAMILY><PARAM>Geneva</PARAM>


And thereby hangs the tale, eh?



- -------------------------------------------------

This message was created and sent using the Cyberdog Mail System

- -------------------------------------------------

</FONTFAMILY></X-FONTSIZE></SMALLER>
--Cyberdog-MixedBoundary-00037B8D--

--Cyberdog-AltBoundary-00037B8D--


+++++++++++++++++++++++++++

>From jonathan@illuminata.com (Jonathan Eunice)
Date: Mon, 16 Sep 1996 10:48:10 -0400
Organization: Illuminata, Inc.

Lawson English <english@primenet.com> wrote:

> >is unless they failed to promote it adequately as they've done with all
> >of their other superior technology(even QuickTime which won by default).
> 
> And thereby hangs the tale, eh?

Something like that.  

Can a format be successful on the Internet/intranet when <10% of the
clients extant can use the format?  Probably not, because few will find
it rewarding to develop tools for, or create content for, that format.
Apple is not the most credible or eager provider of cross-platform
software.  Should it even try to be?  If GX were completely unique in
its capabilities, with nothing similar on the horizon, that would be one
thing.  But GX faces a tough competitor as Adobe drives its imaging
model into browser technology ("Bravo").  Finally, what about the
business case?  If Apple were to spend the time and money to make
QuickDraw GX a cross-platform module (which it could certainly do, akin
to QuickTime), would this materially improve revenue or profitability?
Probably not.

The problem with many Apple technologies, GX included, is that while
wonderful on their own, they seem crafted in a vacuum, without reference
to what other companies are doing.  Designing with a "build a neato
capability and they will come" mentality, Apple is left with a whole
grab-bag of technologies, many of which partially overlap products with
a better shot at life, and most of which are insufficiently compelling
to marshall broad development resources.

If you buy this line of reasoning--mac.advocates.who.never.say.die, of
course, will not--the problem is worse than poor marketing.  It's poor
economics.  Thereby hangs the tale. 


-- 
Jonathan Eunice
Analyst, client/SERVER Companion

+++++++++++++++++++++++++++

>From "Lawson English" <english@primenet.com>
Date: 17 Sep 1996 13:21:00 -0700
Organization: Primenet Services for the Internet

Jonathan Eunice <jonathan@illuminata.com> said:

>Can a format be successful on the Internet/intranet when <10% of the
>clients extant can use the format?  Probably not, because few will find
>it rewarding to develop tools for, or create content for, that format.


True, but *I* have been advocating that Apple make GX available for anyone
to use via an OpenDoc/Cyberdog (ODF?) combo: anyone that is willing to port
OpenDoc/Cyberdog(/ODF?) to their own OS can license GX for the price of
doing the port themselves. -this includes Microsoft, IBM, Sun, and any
Linux provider. If Apple does the port, they can license it as they do
other such services cross-platform.

>Apple is not the most credible or eager provider of cross-platform
>software.  Should it even try to be?  


Ever hear of QuickTime players? And yes, in the age of the platform-neutral
(at least until MS gets its way) Internet, Apple has to be a "most credible
or eager provider of cross-platform software" in order to survive.

If GX were completely unique in
>its capabilities, with nothing similar on the horizon, that would be one
>thing.  But GX faces a tough competitor as Adobe drives its imaging
>model into browser technology ("Bravo"). 

Bravo is based on the Illustrator/Acrobat engine. I suspect that it isn't
as pretty as GX, although of course, we haven't seen it yet, have we? GX
has 5 programmers manuals, including 2 that would be used by A.I.G.
programmers. They've been around for years. While the full engine used
internally by Adobe has been around for years, where's the shipping
products/plug-ins based on Bravo?

Go to http://www.electrifier.com for a plug-in AND a free middle-level
drawing tool to produce content for the plug-in using GX. I've checked
Adobe's site several times. Not only is there only one "major" paper (2-3
pages long) about Bravo at their site, but I've yet to see a time-table for
the release of any Bravo-based plug-ins and/or Bravo-producing editors.

 Finally, what about the
>business case?  If Apple were to spend the time and money to make
>QuickDraw GX a cross-platform module (which it could certainly do, akin
>to QuickTime), would this materially improve revenue or profitability?
>Probably not.
>


All these cross-platform solutions are *marketing* strategies. Both to the
end-user and to the developer. GX (AKA Apple Internet Graphics) made
cross-platform would be the same, only far more flamboyant than anything
that Apple or anyone else has done in the past.


>The problem with many Apple technologies, GX included, is that while
>wonderful on their own, they seem crafted in a vacuum, without reference
>to what other companies are doing.  Designing with a "build a neato
>capability and they will come" mentality, Apple is left with a whole
>grab-bag of technologies, many of which partially overlap products with
>a better shot at life, and most of which are insufficiently compelling
>to marshall broad development resources.

While there are pleny of technologies from Apple that sorta fit your
description, I'm not sure that GX is one of them. Afterall, GX will be the
core graphics model of MacOS8 and probably of System 7.8/9.

Also, consider: GX is object-based and designed to be easily extensible,
both by Apple and by 3rd-parties. One of my proposed extensions to GX for
A.I.G. use would be to allow scripting/applets/something to be embedded in
shapes which can run during "idle time" and allow client-based animation
without pain.

How do you embed a script within a shape or group of shapes using Bravo,
which uses the PostScript model and whose API we have yet to see, BTW.

I suspect that Adobe would have to create a HUGE amount of glue to
accomplish this task, which *I* can do *right now* with a trivial addition
to the GX programming API within my own app.

How do you allow shapes to respond to messages from other shapes or from
embedded plug-ins using a PostScript model?

The same extension that allows shapes to respond to idle-time messages can
be used to respond to messages from other shapes, plug-ins, "cosmic"
applets, and user input (mouse clicks, etc).

Care to rewrite the parser for Acrobat to accomplish this?

*I* can do this RIGHT NOW with GX because of the original design.


GX is FAR superior in every way that counts on the Internet compared to
what I understand Bravo to be.

For instance, Bravo is touted as allowing "light-weight" DTP applets. GX
would allow LightningDraw-level (a $200 package, I believe) applets to be
used with Java supplying the GUI glue and GX supplying the API since that
is the basic paradigm of LightningDraw or so I understand.

If you want to characterize LightningDraw as "lightweight," feel free.


GX, recast as a cross-platform "Apple Internet Graphics" API would be a
Very Good Thing for Apple.

I'm still hopeful that Apple recognizes this.


- -------------------------------------------------
This message was created and sent using the Cyberdog Mail System
- -------------------------------------------------




+++++++++++++++++++++++++++

>From mouser@zercom.net (Martin-Gilles Lavoie)
Date: 17 Sep 1996 15:40:38 GMT
Organization: Groupimage, inc.

In article <19960916104810195613@[205.164.85.14]>, jonathan@illuminata.com
(Jonathan Eunice) wrote:

> 
> The problem with many Apple technologies, GX included, is that while
> wonderful on their own, they seem crafted in a vacuum, without reference
> to what other companies are doing.  Designing with a "build a neato
> capability and they will come" mentality, Apple is left with a whole
> grab-bag of technologies, many of which partially overlap products with
> a better shot at life, and most of which are insufficiently compelling
> to marshall broad development resources.
> 

Apparently, QD GX has been compiled for NT (with complete success I dont
know--but I did read Apple was/is trying to acheive this).  I dont think
there's a definite product plan, but this QX NT "test" must mean
something.

Are we about to see a GX Raster Image Processor?

-- 
Martin-Gilles Lavoie
"The only trinary-state binary system known to live"
[Develop issue 24, page 4]

+++++++++++++++++++++++++++

>From ldhelp@larisoftware.com (LightningDraw Technical Support)
Date: Tue, 24 Sep 1996 09:10:51 -0400
Organization: Lari Software Inc.

In article <mouser-1709961140520001@204.191.6.170>, mouser@zercom.net
(Martin-Gilles Lavoie) wrote:

> In article <19960916104810195613@[205.164.85.14]>, jonathan@illuminata.com
> (Jonathan Eunice) wrote:
>
> > The problem with many Apple technologies, GX included, is that while
> > wonderful on their own, they seem crafted in a vacuum, without reference
> > to what other companies are doing.  Designing with a "build a neato
> > capability and they will come" mentality, Apple is left with a whole
> > grab-bag of technologies, many of which partially overlap products with
> > a better shot at life, and most of which are insufficiently compelling
> > to marshall broad development resources.
> 
> Apparently, QD GX has been compiled for NT (with complete success I dont
> know--but I did read Apple was/is trying to acheive this).  I dont think
> there's a definite product plan, but this QX NT "test" must mean
> something.
> 
> Are we about to see a GX Raster Image Processor?

Actaully, there is already a GX RIP out there.

Signalize!, from Dunaway Systems provides raster image processing with
stochastic halftoning and support for a wide range of document formats
--including QuickDraw GX Portable Digital Documents as well as the more
standard PostScript Level 2, TIFF, and JPEG -- in a PowerMac-hosted
application.

For more information, you can check out their press release at
<http://www.ixmedia.com/quickgx/pr/signalize.html>


Ta,
     -Stephen, not speaking for Lari Software at the moment

---------------------------

>From k.m.g.m.vanderdrift@ams.chem.ruu.nl (Koen van der Drift)
Subject: REQ: Pascal source on line??
Date: Tue, 24 Sep 1996 11:09:40 +0200
Organization: Hardly before noon

Hi,

I am looking for an example of the Pascal code for a small to medium sized
program. I would like to look how a code is structured, and how all the
toolbox commands are implemented. A good example of what I mean is the
Newswatcher C-code which was put on the net by its author John Norstad.

any help appreciated,

- Koen.

+++++++++++++++++++++++++++

>From ingemar@lysator.liu.se (Ingemar Ragnemalm)
Date: 24 Sep 1996 14:24:04 GMT
Organization: (none)


k.m.g.m.vanderdrift@ams.chem.ruu.nl (Koen van der Drift) writes:

>I am looking for an example of the Pascal code for a small to medium sized
>program. I would like to look how a code is structured, and how all the
>toolbox commands are implemented. A good example of what I mean is the
>Newswatcher C-code which was put on the net by its author John Norstad.

Check out

http://users.aol.com/catambay/pascal.html
(Pascal Central, lots of good pointers to Pascal-related info.)

and

ftp://ftp.lysator.liu.se/pub/mac/source/.
(My source-code archive with plenty of small demos.)

--
- -
Ingemar Ragnemalm, PhD
Image processing, Mac shareware games
E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se

---------------------------

>From mschuett@inet.uni-c.dk (Mikael Schutt)
Subject: Really Basic Question
Date: Wed, 18 Sep 1996 16:46:39 +0200
Organization: News Server at UNI-C, Danish Computing Centre for Research and Education.

Hi!

Can anybody explain to me how I (in C) can make a struct of float arrays,
where the array size is dependent on other variabels? The code below does
not work, and I can't really figure out how to make it work. Later on,
I'll need to make the array sizes from a dialog, so I'm trying to
understand how to define a struct after main() has begun to execute. 

 
CODE:
- ---------

#include <stdio.h>
#include <stdlib.h>
#include <sound.h>
#include <SIOUX.h>
#include <ctype.h>
#include <string.h>
#include <unistd.h>

#define     kMaxX       16 
#define     kMaxY       16
#define     kStepSize   16
#define     kZVar       16
#define     kXYVar      16

int   gMaxX=kMaxX;           
int   gMaxY=kMaxY;           
int   gStepSize=kStepSize;      
int   gZVar=kZVar;           
int   gXYVar=kXYVar;            
int   gtheSize = (gMaxX * gMaxY);   /* Not Working - I wonder why? */

/***********************/
/* Struct Declarations */
/***********************/
struct XYZ
{
   float X[ gtheSize ];
   float Y[ gtheSize ];
   float Z[ gtheSize ];
};

- -----------
End CODE


These are the errors I get:

Error   : illegal constant expression
Gridmaker.c line 28   int gtheSize = (gMaxX * gMaxY);
Error   : illegal constant expression
Gridmaker.c line 35   float X[ gtheSize ];
Error   : illegal constant expression
Gridmaker.c line 36   float Y[ gtheSize ];
Error   : illegal constant expression
Gridmaker.c line 37   float Z[ gtheSize ];

I'm using Codewarrier 8 (68k) from Discover Programming on a PowerMac 7500.


Thanks a lot for any help!

Mikael Schutt, Denmark

PS: If you can be bothered to e-mail me your answer I'd be extra happy:)

mschuett@inet.uni-c.dk

+++++++++++++++++++++++++++

>From kuznetso@mit.edu (Eugene Kuznetsov)
Date: Wed, 18 Sep 1996 19:51:33 -0400
Organization: Massachvsetts Institvte of Technology

In article <mschuett-1809961646390001@arh172.ppp.uni-c.dk>,
mschuett@inet.uni-c.dk (Mikael Schutt) wrote:

> Can anybody explain to me how I (in C) can make a struct of float arrays,
> where the array size is dependent on other variabels? The code below does
> not work, and I can't really figure out how to make it work. Later on,
> I'll need to make the array sizes from a dialog, so I'm trying to
> understand how to define a struct after main() has begun to execute. 

   Mikael,
   
   You can't do it this way.  A C compiler must know how large an array is
at compile-time, because standard C arrays are not dynamic. However, there
is an easy way to get around this.  Something like the code below should
work, although I haven't even tried to compile it.  You can certainly use
"malloc" instead of the Mac's NewPtr call to allocate memory, if you
wanted cross-platform code.
   The C compiler basically interprets a[i] as (*(a+i)), so it does care
whether you're dealing with a static array or a dynamically allocated
chunk of memory.
   Hope this helps,
   
                                 Eugene Kuznetsov
                                 kuznetso@mit.edu
                                                               

struct XYZ
{
    float *X;
    float *Y;
    float *Z;
};

void main ()
{
   int x,y,z,i;

   GetSizesFromUser(&x,&y,&z);
   XYZ.X = NewPtr(x);
   XYZ.Y = NewPtr(y);
   XYZ.Z = NewPtr(z);

   for (i = 0; i < x; i++) {
      XYZ.X[i] = 0.5;
   }

}

+++++++++++++++++++++++++++

>From mmucker@airmail.net (Matthew Mucker)
Date: Tue, 24 Sep 1996 13:18:26 +0500
Organization: Internet America

In article <mschuett-1809961646390001@arh172.ppp.uni-c.dk>,
mschuett@inet.uni-c.dk (Mikael Schutt) wrote:

> Hi!
> 
> Can anybody explain to me how I (in C) can make a struct of float arrays,
> where the array size is dependent on other variabels? The code below does
> not work, and I can't really figure out how to make it work. Later on,
> I'll need to make the array sizes from a dialog, so I'm trying to
> understand how to define a struct after main() has begun to execute. 


I believe this question may have been answered here recently.  Basically,
you can't.  The compiler needs to know the size of the array at compile
time so that it can allocate enough memory.

I'd suggest requesting memory from the Memory Manager as an alternative,
though I do not know how to do this personally.

Sorry for the 'wrong' answer.  Many a time I've wanted to size an array
based on other variables.  But it can't be done.  (although if you do
manage, please share your secret with the rest of us!)

-Matt

-- 
Life is 10% what happens to you, and 90% how you respond to what happens to you.

+++++++++++++++++++++++++++

>From pecora@zoltar.nrl.navy.mil (Louis M. Pecora)
Date: Tue, 24 Sep 1996 17:12:28 +0100
Organization: Naval Research Laboratory

In article <mmucker-2409961318260001@fw3-13.ppp.iadfw.net>,
mmucker@airmail.net (Matthew Mucker) wrote:

> In article <mschuett-1809961646390001@arh172.ppp.uni-c.dk>,
> mschuett@inet.uni-c.dk (Mikael Schutt) wrote:
> 
> > Hi!
> > 
> > Can anybody explain to me how I (in C) can make a struct of float arrays,
> > where the array size is dependent on other variabels? The code below does
> > not work, and I can't really figure out how to make it work. Later on,
> > I'll need to make the array sizes from a dialog, so I'm trying to
> > understand how to define a struct after main() has begun to execute. 
> 
> 
> I believe this question may have been answered here recently.  Basically,
> you can't.  The compiler needs to know the size of the array at compile
> time so that it can allocate enough memory.

Right. 

- -------------------------------------------
Here's how you can do it to get float or double vectors and matrices:

#define real float
/* Or if you want double, uncomment the line below and comment the one above
#define real double
*/

/* The routine FATAL_ERROR is one you can write to print out the warning
message and call exit(1) to terminate the program if there is a problem */

/* ---- Allocate a real vector --------------------------- */
real *VECTOR(long n)  {
   real *v;
   v=(real *)malloc((size_t) (n*sizeof(real)));
   if (!v)   {
      FATAL_ERROR("*VECTOR","  Allocation of memory for real array failed.");  }
   return v;
}

/* ---- Free a real vector ---------------------------------
   Remember, you MUST free memory when you are done with it.
   That means _before_ you exit a function that allocated the memory
   and you lose the pointer to it.  Then the memory is "tied up,"
   but unaccessible to you.  Bad news. */ 
void free_VECTOR(real *v)  {
   free((char*) v);
}

/* ---- Allocate a real matrix ------------------------------------ */
real **MATRIX(long nrow, long ncol)  {
   long i;
   real **m;
   /* allocate pointers to rows */
   m=(real **) malloc((size_t)(nrow*sizeof(real*)));
   if (!m) {
      FATAL_ERROR("**MATRIX","  Allocation of memory for rows of real
array failed.");  }
   /* allocate rows and set pointers to them */
   m[0]=(real *) malloc((size_t)(nrow*ncol*sizeof(real)));
   if (!m[0]) {
      FATAL_ERROR("**MATRIX","  Allocation of memory for cols of real
array failed.");  }

   for(i=1;i<nrow;i++) m[i]=m[i-1]+ncol;

   /* return pointer to array of pointers to rows */
   return m;
}
/* ---- Free a real matrix ---------------------------------*/ 
void free_MATRIX(real **m)  {
   free((char*) (m[0]));
   free((char*) (m));
}

- -------------------------------------------
Here's how you can do it to get integer vectors:


/*  ---- Allocate memory for int array --------------------------------------*/ 
int *iVECTOR(int n)  {
   int *ptr;
   ptr= (int *)malloc((size_t) (n*sizeof(int)));
   if (!ptr)  {
      FATAL_ERROR("*iVECTOR","  Allocation of memory for integer array
failed.");  }
   return ptr;
}

/*  ---- Free memory for int array ----------------------------------------*/ 
void free_iVECTOR(int* m)  {
   free((char*) m);
}

   -------------------------------------------------------
Typical usage:

/* A function that allocates a variable number of elements, calculates something
and then cleans up after itself. Remember to define real as float or
double, depending on which you want. */

real func(int n)  {
   int i;
   real *vec;
   real result;

   vec=VECTOR(n);  /* Make a 1D array of "reals", a vector */

   /* calculate some stuff here and get result...for example:  */
   result=0.0;
   for (i=0; i<n; i++)  {
      vec[i]=(real)(i*i);
      result +=vec[i]*vec[i];  }

   free_VECTOR(vec);  /* Free that memory. Very important before returning! */
   return result;
}

- ------------------------------------
I hope that helps (I did not see your original post, sorry).

-- 
Louis M. Pecora
pecora@zoltar.nrl.navy.mil
 == My views and opinions are not those of the U.S. Navy. ==

- ------------------------------------------------------------------
* Check out the home page for the 4th Experimental Chaos Conference! 

             http://natasha.umsl.edu/Exp_Chaos4
- -------------------------------------------------------------------

---------------------------

>From "Jim Orcutt" <jim_orcutt@studio.disney.com>
Subject: Scripting Addition to check for PowerMac vs. 68K
Date: 20 Sep 1996 23:19:35 GMT
Organization: The Walt Disney Company

I am looking for a scripting addition for an AppleScript we use to update
in-house Mac applications.  In particular, I need a scripting addition that
can determine the difference between a PowerMac and a 68K Mac.  Seen
anything?  Thanks.

Virtually,
Jim

jim_orcutt@studio.disney.com

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:56:26 GMT
Organization: Will hack for food

Jim Orcutt (jim_orcutt@studio.disney.com) wrote:
> I am looking for a scripting addition for an AppleScript we use to update
> in-house Mac applications.  In particular, I need a scripting addition that
> can determine the difference between a PowerMac and a 68K Mac.  Seen
> anything?  Thanks.

Jon's Commands.

http://www.infoworkshop.com/~jonpugh/

Jon

+++++++++++++++++++++++++++

>From jonpugh@netcom.com (Jon Pugh)
Date: Sun, 22 Sep 1996 05:56:26 GMT
Organization: Will hack for food

Reposting article removed by rogue canceller.

Jim Orcutt (jim_orcutt@studio.disney.com) wrote:
> I am looking for a scripting addition for an AppleScript we use to update
> in-house Mac applications.  In particular, I need a scripting addition that
> can determine the difference between a PowerMac and a 68K Mac.  Seen
> anything?  Thanks.

Jon's Commands.

http://www.infoworkshop.com/~jonpugh/

Jon

---------------------------

>From jmerrima@ix.netcom.com (Jonathan Merriman)
Subject: Shareware Assembler
Date: Fri, 20 Sep 1996 16:27:18 -0700
Organization: Netcom

Know of any?

- -------------------------------------------------------------------
Jonathan Merriman            | Marathon Maniac Monthly
jmerrima@ix.netcom.com       | Mail me if you want to pre-order.
- -------------------------------------------------------------------
http://www.netcom.com/~jmerrima/
- -------------------------------------------------------------------

+++++++++++++++++++++++++++

>From jayfar@netaxs.com (Jay Farrell)
Date: Sat, 21 Sep 1996 10:49:43 -0400
Organization: Net Access - Philadelphia's Original ISP

In article <jmerrima-2009961627190001@spo-wa1-05.ix.netcom.com>,
jmerrima@ix.netcom.com (Jonathan Merriman) wrote:

> Know of any?

Fantasm is shareware.  I'm pretty sure it can produce both PPC & 68k code. 
I think you can find it in the dev directory at your friendly neighborhood
info-mac mirror.

Cheers,
Jayfar

   ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
  ////   The Mops Page    <URL:http://www.netaxs.com/~jayfar/mops.html>    ////
 ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
////   Mops is Mike Hore's Freeware Forth/Smalltalk hybrid for Macintosh ////
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Jay Farrell     jayfar@netaxs.com        Philadelphia, Pennsylvania, USA

+++++++++++++++++++++++++++

>From shield@sprynet.com (Garry Roseman)
Date: Mon, 23 Sep 1996 00:13:15 -0400
Organization: Writer & Freelance Programmer

Jay Farrell <jayfar@netaxs.com> wrote:

> In article <jmerrima-2009961627190001@spo-wa1-05.ix.netcom.com>,
> jmerrima@ix.netcom.com (Jonathan Merriman) wrote:
> 
> > Know of any?
> 
> Fantasm is shareware.  I'm pretty sure it can produce both PPC & 68k code.
> I think you can find it in the dev directory at your friendly neighborhood
> info-mac mirror.
> 

PowerFantasm can generate 68K and PPC. Info is available on the
Lightsoft page:

Lightsoft's "The Programmers Dream": 
     http://www.tau.it/lightsoft

-- 
  Garry Roseman  <mailto:shield@sprynet.com>
  Writer & Freelance Programmer
  Memphis TN USA

+++++++++++++++++++++++++++

>From jayfar@netaxs.com (Jay Farrell)
Date: Sat, 21 Sep 1996 10:49:43 -0400
Organization: Net Access - Philadelphia's Original ISP

Reposting article removed by rogue canceller.

In article <jmerrima-2009961627190001@spo-wa1-05.ix.netcom.com>,
jmerrima@ix.netcom.com (Jonathan Merriman) wrote:

> Know of any?

Fantasm is shareware.  I'm pretty sure it can produce both PPC & 68k code. 
I think you can find it in the dev directory at your friendly neighborhood
info-mac mirror.

Cheers,
Jayfar

   ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
  ////   The Mops Page    <URL:http://www.netaxs.com/~jayfar/mops.html>    ////
 ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
////   Mops is Mike Hore's Freeware Forth/Smalltalk hybrid for Macintosh ////
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Jay Farrell     jayfar@netaxs.com        Philadelphia, Pennsylvania, USA

---------------------------

>From Jason J Mullins <jasonm@mcqueen.com>
Subject: Smalltalk for CW?
Date: Mon, 23 Sep 1996 13:32:26 +0100
Organization: McQueen

Does anyone know of Smalltalk stuff for CW (9/10) or another
implementation which would be as good.

I am starting an OOP course using Smalltalk that is based on DOS
(?&@!!@@?!) so I -need- a better option (even if it means buying CW10 -
education of course!)

Thanks,

Jason

+++++++++++++++++++++++++++

>From mouser@zercom.net (Martin-Gilles Lavoie)
Date: 24 Sep 1996 19:57:59 GMT
Organization: Groupimage, inc.

In article <3246833B.1461@mcqueen.com>, jasonm@mcqueen.com wrote:

> Does anyone know of Smalltalk stuff for CW (9/10) or another
> implementation which would be as good.
> 
> I am starting an OOP course using Smalltalk that is based on DOS
> (?&@!!@@?!) so I -need- a better option (even if it means buying CW10 -
> education of course!)

Smalltalk is not a language that is accessible from CodeWarrior.  Besides
the economics factor (engineering costs for MW would be greater than
revenus on this one), Smalltalk requires a very specialised "shell" which
acts more like a sub-Operating System than an IDE.

SmallTalk on the Mac is best acheived (so I'm told, since I've not used it
myself) through Quasar Knowledge Systems' SmallTalkAgents (info@qks.com,
800 296-1339).  They probably have educational discounts (though I'm not
sure).

-- 
Martin-Gilles Lavoie
"The only trinary-state binary system known to live"
[Develop issue 24, page 4]

---------------------------

>From rvien@dreamscape.com (Robert Vienneau)
Subject: Symantec, Mac, v8.x help requested
Date: 15 Sep 1996 16:52:30 GMT
Organization: Dreamscape Online

I have some questions about Symantec C++ for the Mac, version 8.x.

I am trying to write a simple Visual Architect application. I need to use
the CtoPstr function in Mac Headers. My program compiles correctly, but
the linker cannot find CtoPstr. What object files *.o do I need to
add to my project? More generally, how can I find what's in the various
object files so as to be able to answer questions like this by myself
in the future?

Does Symantec have an E-mail address for technical support questions
like this. I looked at their Web site

    http://www.symantec.com/servsupp/techsupp/techsupp.html

and it seems not.

Will respondents please e-mail me a copy since I rarely read these
newsgroup.

Thanks,

-- 
Robert Vienneau                   Try my Mac econ simulation game,            
rvien@future.dreamscape.com       Bukharin, at
     
  ftp://csf.colorado.edu/econ/authors/Vienneau.Robert/Bukharin.sea

Whether strength of body or of mind, or wisdom, or virtue, are always
found...in proportion to the power or wealth of a man [is] a question
fit perhaps to be discussed by slaves in the hearing of their
masters, but highly unbecoming to reasonable and free men in search
of the truth.                         -- Rousseau

+++++++++++++++++++++++++++

>From pkmagle@netins.net (Patricia Magle Jones)
Date: Sat, 21 Sep 1996 23:51:38 +0100
Organization: netINS, Inc.

In article <rvien-1509961257310001@ua4.dreamscape.com>,
rvien@dreamscape.com (Robert Vienneau) wrote:

> I have some questions about Symantec C++ for the Mac, version 8.x.
> 
> I am trying to write a simple Visual Architect application. I need to use
> the CtoPstr function in Mac Headers. My program compiles correctly, but
> the linker cannot find CtoPstr. What object files *.o do I need to
> add to my project? 

I don't have your version, but an earlier one. It appears to me that
MacTraps contains the library you desire (I saw a CPstr.lib included in
it). I'm new to C++ but have done a lot with Symantec C, so I just did
a lot of Mac-ish point and clicking to find this info.

>More generally, how can I find what's in the various
> object files so as to be able to answer questions like this by myself
> in the future?

I was impressed when I played with this version to find that I could
do grep searches on the individual libraries like CPlusLib & ANSI++ after
double clicking them from the project window and opening a new window
for these. The search probably worked because the sources were identified.
Anyway I did this with the Bullseye++ Demo, but didn't find CtoPstr there 
and when I added  a simple use of it to the main program I got the 
link error as expected. Then I opened some other demos to try same.
When I came to the @1.pi project in ProjectModels/MacApplicationProjects 
folder I opened the project and when I double-clicked the MacTraps
entry I saw CPstr.lib. Unfortunately grep searching was inactive here
(not source entries) so I placed the CtoPstr call in the main program
and was able to link. So this is how I answered this question.

I should say that I began by opening Think Reference and searching for
CtoPstr and saw many entries in the guides. This did not help me but I
did look at the sample codes in each use example to see what .h files
were included for hints. None the less, you should have a copy of
Think Reference. I purchased mine separately... but I think Sym C++ may
include it.

An old trick I used with the first Think C environment to be able to
do grep searches in all the .h files was to create a project called 
AllDotH and included every .h file that I could find which came with
the system. The main program was a simple do nothing stub. It was 
great for finding which .h file a particular function was in and
hence which library was needed. Today however an ANSI lib is used
rather than many individual ones back then so this trick may not be
as useful now. Also, doing this in C++ may be unwieldy. And finally,
given my pleasant findings with SymC++  (i.e., being able to do
multi-file grep searches on the libraries) this old trick may be
obsolete. But I give it to you just the same... old trick have a
habit of being relevant or lead to flash insights toward new ones.

> Does Symantec have an E-mail address for technical support questions
> like this

I'm sure they do. My books are at the office so if you don't figure
this out then email me at jsjones@graceland.edu and I will look up 
a phone number. I start by looking at one of my Symantec Manuals to
find the tech support number. Often I get an old manual (it is usually
more prominent in those) and the number has likely changed... but it
is also as likely that I scratched in the new number so I probably have
it handy.

Regards,
Jim Jones

+++++++++++++++++++++++++++

>From pkmagle@netins.net (Patricia Magle Jones)
Date: Sat, 21 Sep 1996 23:51:38 +0100
Organization: netINS, Inc.

Reposting article removed by rogue canceller.

In article <rvien-1509961257310001@ua4.dreamscape.com>,
rvien@dreamscape.com (Robert Vienneau) wrote:

> I have some questions about Symantec C++ for the Mac, version 8.x.
> 
> I am trying to write a simple Visual Architect application. I need to use
> the CtoPstr function in Mac Headers. My program compiles correctly, but
> the linker cannot find CtoPstr. What object files *.o do I need to
> add to my project? 

I don't have your version, but an earlier one. It appears to me that
MacTraps contains the library you desire (I saw a CPstr.lib included in
it). I'm new to C++ but have done a lot with Symantec C, so I just did
a lot of Mac-ish point and clicking to find this info.

>More generally, how can I find what's in the various
> object files so as to be able to answer questions like this by myself
> in the future?

I was impressed when I played with this version to find that I could
do grep searches on the individual libraries like CPlusLib & ANSI++ after
double clicking them from the project window and opening a new window
for these. The search probably worked because the sources were identified.
Anyway I did this with the Bullseye++ Demo, but didn't find CtoPstr there 
and when I added  a simple use of it to the main program I got the 
link error as expected. Then I opened some other demos to try same.
When I came to the @1.pi project in ProjectModels/MacApplicationProjects 
folder I opened the project and when I double-clicked the MacTraps
entry I saw CPstr.lib. Unfortunately grep searching was inactive here
(not source entries) so I placed the CtoPstr call in the main program
and was able to link. So this is how I answered this question.

I should say that I began by opening Think Reference and searching for
CtoPstr and saw many entries in the guides. This did not help me but I
did look at the sample codes in each use example to see what .h files
were included for hints. None the less, you should have a copy of
Think Reference. I purchased mine separately... but I think Sym C++ may
include it.

An old trick I used with the first Think C environment to be able to
do grep searches in all the .h files was to create a project called 
AllDotH and included every .h file that I could find which came with
the system. The main program was a simple do nothing stub. It was 
great for finding which .h file a particular function was in and
hence which library was needed. Today however an ANSI lib is used
rather than many individual ones back then so this trick may not be
as useful now. Also, doing this in C++ may be unwieldy. And finally,
given my pleasant findings with SymC++  (i.e., being able to do
multi-file grep searches on the libraries) this old trick may be
obsolete. But I give it to you just the same... old trick have a
habit of being relevant or lead to flash insights toward new ones.

> Does Symantec have an E-mail address for technical support questions
> like this

I'm sure they do. My books are at the office so if you don't figure
this out then email me at jsjones@graceland.edu and I will look up 
a phone number. I start by looking at one of my Symantec Manuals to
find the tech support number. Often I get an old manual (it is usually
more prominent in those) and the number has likely changed... but it
is also as likely that I scratched in the new number so I probably have
it handy.

Regards,
Jim Jones

+++++++++++++++++++++++++++

>From symscott@devtools.symantec.com (Symantec/Scott Morison)
Date: Tue, 24 Sep 1996 14:16:28 -0800
Organization: Symantec Corporation


Robert -

Sorry to be sending this response so late but I just noticed your post.

> I have some questions about Symantec C++ for the Mac, version 8.x.
> 
> I am trying to write a simple Visual Architect application. I need to use
> the CtoPstr function in Mac Headers. My program compiles correctly, but
> the linker cannot find CtoPstr. What object files *.o do I need to
[snip]

CtoPstr() and PtoCstr() have changed. They are now defined as c2pstr() and
p2cstr() in the file, "Strings.h", and their declarations are in
PPCRuntime.o or Runtime.o in the 68k version.

 
> Does Symantec have an E-mail address for technical support questions
> like this. I looked at their Web site

Yes!

Send any C/C++/Pascal/Cafe/VA-TCL question to
<support@devtools.symantec.com>, for a 24 hour (average Mon.-> Fri.) turn
around response time.

- Scott Morison, Symantec Internet Tools Technical Support

-- 

For more information on this or any other C/C++/Pascal/Cafe
issue please feel free to drop us a note or call: 

E-mail      : support@devtools.symantec.com
Tech Support: 541/465-8470
Cust Service: 800/441-7234

---------------------------

>From alex@metcalf.demon.co.uk (Alex Metcalf)
Subject: System 7.5.5 fixes
Date: Sun, 22 Sep 1996 00:27:31 GMT
Organization: (none)

Hi,

     I just found this info on System 7.5.5; sorry if people already know
about it, but it has some interesting tech info on bug fixes:

http://devworld.apple.com/dev/technotes/tn/tn1069.html




     Alex

--
Alex Metcalf
alex@metcalf.demon.co.uk

+++++++++++++++++++++++++++

>From jayfar@netaxs.com (Jay Farrell)
Date: Sat, 21 Sep 1996 22:21:14 -0400
Organization: Net Access - Philadelphia's Original ISP

In article <alex-2209960128270001@metcalf.demon.co.uk>,
alex@metcalf.demon.co.uk (Alex Metcalf) wrote:

> Hi,
> 
>      I just found this info on System 7.5.5; sorry if people already know
> about it, but it has some interesting tech info on bug fixes:
> 
> http://devworld.apple.com/dev/technotes/tn/tn1069.html

Thanks Alex.  I was unclear on whether the VM enhancements applied to the
68k code; I see in the Tech Note 1069 that indeed the 68k VM has been
rewritten too.  

On my Quadra 605 with 8 megs real ram, the new 7.5.5 VM _seems_ the perform
as well as RD did for me under 7.5.3.  YMMV, of course.

Cheers,
Jayfar

   ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
  ////   The Mops Page    <URL:http://www.netaxs.com/~jayfar/mops.html>    ////
 ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
////   Mops is Mike Hore's Freeware Forth/Smalltalk hybrid for Macintosh ////
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Jay Farrell     jayfar@netaxs.com        Philadelphia, Pennsylvania, USA

+++++++++++++++++++++++++++

>From jumplong@aol.com (Jump Long)
Date: 22 Sep 1996 13:33:06 -0400
Organization: America Online, Inc. (1-800-827-6364)

Jay Farrell wrote:
>Thanks Alex.  I was unclear on whether the VM enhancements
>applied to the 68k code; I see in the Tech Note 1069 that indeed
>the 68k VM has been rewritten too.  
>
>On my Quadra 605 with 8 megs real ram, the new 7.5.5 VM _seems_
>the perform as well as RD did for me under 7.5.3.  YMMV, of
>course.

Actually, VM wasn't completely rewritten by any means -- Jim Gochee,
working for Apple's Performance Engineering Group, identified some
behaviors in VM that caused performance problems and I fixed those
problems. The performance increase is much more noticable on Power
Macintosh systems, but 68K systems will still benefit.

I also fixed all of the outstanding bugs against VM in our bug database,
so VM should be more stable. We've found a few programs that still don't
work with VM on, but that usually turns out to be a problem with that
program, not VM. For example, versions of the MPW shell prior to v3.4.2b2
(on E.T.O #21) were installing a Time Manager task more times than they
were removing the same task when ScreenUpdateDelay is changed from its
default value. While that will cause problems even with VM off, turning VM
on made the problem much more noticable because the table where VM stores
deferred user tasks overflowed because the calls were not balanced.

- Jim Luther

+++++++++++++++++++++++++++

>From blob@apple.com (Brian Bechtel)
Date: Sat, 21 Sep 1996 21:16:34 -0700
Organization: Developer Technical Support, Apple Computer, Inc.

Reposting article removed by rogue canceller.

In article <alex-2209960128270001@metcalf.demon.co.uk>,
alex@metcalf.demon.co.uk (Alex Metcalf) wrote:

>      I just found this info on System 7.5.5; sorry if people already know
> about it, but it has some interesting tech info on bug fixes:
> 
> http://devworld.apple.com/dev/technotes/tn/tn1069.html

Yes, and I am interested in feedback about this technote.  What is not
clear?  Where would you like more information?

It would help me track these comments if you would send them to
<devsupport@apple.com>.  Use the subject line "System 7.5.5 technote
feedback", and the message will be automatically routed to me.  Please
don't use my personal account, as I will just have to forward the message
from there.  (The devsupport@apple.com mailing address is tracked via a
database.)

-- 
--Brian Bechtel, blob@apple.com  "My opinions, not Apple's"

+++++++++++++++++++++++++++

>From jayfar@netaxs.com (Jay Farrell)
Date: Sat, 21 Sep 1996 22:21:14 -0400
Organization: Net Access - Philadelphia's Original ISP

Reposting article removed by rogue canceller.

In article <alex-2209960128270001@metcalf.demon.co.uk>,
alex@metcalf.demon.co.uk (Alex Metcalf) wrote:

> Hi,
> 
>      I just found this info on System 7.5.5; sorry if people already know
> about it, but it has some interesting tech info on bug fixes:
> 
> http://devworld.apple.com/dev/technotes/tn/tn1069.html

Thanks Alex.  I was unclear on whether the VM enhancements applied to the
68k code; I see in the Tech Note 1069 that indeed the 68k VM has been
rewritten too.  

On my Quadra 605 with 8 megs real ram, the new 7.5.5 VM _seems_ the perform
as well as RD did for me under 7.5.3.  YMMV, of course.

Cheers,
Jayfar

   ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
  ////   The Mops Page    <URL:http://www.netaxs.com/~jayfar/mops.html>    ////
 ////~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~////
////   Mops is Mike Hore's Freeware Forth/Smalltalk hybrid for Macintosh ////
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Jay Farrell     jayfar@netaxs.com        Philadelphia, Pennsylvania, USA

---------------------------

>From scafidi@cam.org (Warden)
Subject: Think C 5.0.4...can't load resources! HELP!
Date: Mon, 23 Sep 1996 09:53:35 -0800
Organization: Communications Accessibles Montreal, Quebec Canada


  Hi! I just got Think C 5.0.4 a few days ago and I can't seem to load any
.rsrc files to my project menu! I tried to add and transfer but it didn't
read them! Can someone please help!

Warden
BTW: Please reply by e-mail
scafidi@cam.org

+++++++++++++++++++++++++++

>From symscott@devtools.symantec.com (Symantec/Scott Morison)
Date: Mon, 23 Sep 1996 15:28:45 -0800
Organization: Symantec Corporation

In article <scafidi-2309960953350001@dynamicppp-174.hip.cam.org>,
scafidi@cam.org (Warden) wrote:

>   Hi! I just got Think C 5.0.4 a few days ago and I can't seem to load any
> .rsrc files to my project menu! I tried to add and transfer but it didn't
> read them! Can someone please help!
> 


Warden -

Is the Add... dialog window filtering out the .rsrc files or do they just
not appear properly in the project after you've Added them? Try adding
them to a brand new project just to make sure there no funky corruption
that's messing up your current project. 

It may be that you're running into an artifact of the generation gap
between v5.0.4, which was released in 1989 and the machine/OS and possibly
whatever resource editor you're using to create your resource files.

I highly recommend that you update the THINK C version that you have to at
least v7.0.5 or better yet v8r5, if you have a Power Mac.

- Scott Morison, Symantec Internet Tools Technical Support

-- 

For more information on this or any other C/C++/Pascal/Cafe
issue please feel free to drop us a note or call: 

E-mail      : support@devtools.symantec.com
Tech Support: 541/465-8470
Cust Service: 800/441-7234

+++++++++++++++++++++++++++

>From stian@mail.utexas.edu (Stian F.Oksavik)
Date: Mon, 23 Sep 1996 22:33:26 -0500
Organization: University of Texas at Austin

In article <symscott-2309961528450001@news.symantec.com>,
symscott@devtools.symantec.com (Symantec/Scott Morison) wrote:

 > In article <scafidi-2309960953350001@dynamicppp-174.hip.cam.org>,
 > scafidi@cam.org (Warden) wrote:
 > 
 > >   Hi! I just got Think C 5.0.4 a few days ago and I can't seem to load any
 > > .rsrc files to my project menu! I tried to add and transfer but it didn't
 > > read them! Can someone please help!
 > > 
 > 
 > 
 > Warden -
 > 
 > Is the Add... dialog window filtering out the .rsrc files or do they just
 > not appear properly in the project after you've Added them? Try adding
 > them to a brand new project just to make sure there no funky corruption
 > that's messing up your current project. 
 > 
 > It may be that you're running into an artifact of the generation gap
 > between v5.0.4, which was released in 1989 and the machine/OS and possibly
 > whatever resource editor you're using to create your resource files.
 
This is definitely an "artifact problem". THINK C 5.0.4 did not let you
load resource files using the Add... menu item. What you need to do is
name your resource file the exact same thing as your project plus .rsrc.
So if your project is named dummy.¼, you would name the resource file
dummy.¼.rsrc. This is the only way to add resource files to THINK C 5.0.4

THINK C finally broke for me when I got a PowerMac; it is not compatible
with the Modern Memory Manager. I considered upgrading to Symantec C++,
but I think I'll be getting CodeWarrior instead. Metrowerks' academic
pricing can't be beat, and CodeWarrior will let you compile for a number
of different platforms as well.

Anyway, I hope this helps.

-Stian

---------------------------

>From gga@it.ntu.edu.au (Giles Alexander)
Subject: Time Manager Woes...
Date: 22 Sep 1996 03:26:24 GMT
Organization: Northern Territory University

Hi,

I'm using the Time Manager to wake up my background app periodically.  But
there are a few problems.

I'm having some trouble setting the wait time.  I want it to wait 15mins, so
as there are 1000 millisecs in a sec and 60 secs in a min I set it to
60000*15 or 900000.  But, it seems to execute every couple of minutes.
What am I doing wrong? I use InsXtime and PrimeTime.

Also, there is a problem with RmvTime.  I call it just before my program quits,
so that it should be removed on Shut Down.  My program runs from startup to
shut down.  However, when I try to shut down I get an error that the
application unknown wouldn't quit.  When I comment out RmvTime it quits fine.

What am I doing wrong?

Thanks in advance,
Giles Alexander


+++++++++++++++++++++++++++

>From rgenter@5dgames.com (Rick Genter)
Date: Sun, 22 Sep 1996 11:53:31 -0400
Organization: 5D Games, Inc.

In article <522bl0$r59@pellew.ntu.edu.au>, gga@it.ntu.edu.au (Giles
Alexander) wrote:

> I'm having some trouble setting the wait time.  I want it to wait 15mins, so
> as there are 1000 millisecs in a sec and 60 secs in a min I set it to
> 60000*15 or 900000.  But, it seems to execute every couple of minutes.
> What am I doing wrong? I use InsXtime and PrimeTime.
>

Make sure you are either compiling with 4-byte ints, or that you specify
the time as 900000L (long integer constant).

-- 
Rick Genter
VP of R&D
5D Games, Inc.
rgenter@5dgames.com
<http://www.5dgames.com>

+++++++++++++++++++++++++++

>From Russ Hendy <Russ@tui.co.uk>
Date: Mon, 23 Sep 1996 12:54:35 +0000
Organization: tui interactive media

Giles, 

Could it be that you're storing the 900000 figure in a datatype that's
too small? You'd then get wierd timing troubles...

Maybe try a long integer ?

Russ.

+++++++++++++++++++++++++++

>From Russ Hendy <Russ@tui.co.uk>
Date: Mon, 23 Sep 1996 12:54:35 +0000
Organization: tui interactive media

Giles, 

Could it be that you're storing the 900000 figure in a datatype that's
too small? You'd then get wierd timing troubles...

Maybe try a long integer ?

Russ.

---------------------------

>From be@ihug.co.nz (Bryce Ewing)
Subject: Using QuickDraw.
Date: 19 Sep 1996 21:21:07 GMT
Organization: The Internet Group Ltd


 Okay, I've done a lot of graphics programming on a PC compatible, and a bit of 
programming on a Mac, but not involving graphics. It appears that using 
QuickDraw is the key to it but I'm having all sorts of problems getting it to 
work.

 I havn't got much in the way of good documentation for QuickDraw so I don't 
know the steps involved in opening a new window and drawing in it. I've tried 
using NewCWindow but it crashed the whole machine. 

 Anyone have a few tips to get me going?

 Lance Ewing.


+++++++++++++++++++++++++++

>From smfr@santafe.edu (Simon Fraser)
Date: Thu, 19 Sep 1996 20:41:06 -0700
Organization: Santa Fe Institute

In article <51sdg3$ge8@newsource.ihug.co.nz>, be@ihug.co.nz (Bryce Ewing) wrote:

> Okay, I've done a lot of graphics programming on a PC compatible, and a
bit of 
>programming on a Mac, but not involving graphics. It appears that using 
>QuickDraw is the key to it but I'm having all sorts of problems getting it to 
>work.
>
> I havn't got much in the way of good documentation for QuickDraw so I don't 
>know the steps involved in opening a new window and drawing in it. I've tried 
>using NewCWindow but it crashed the whole machine. 

Try initializing the ToolBox first   ;-)

Seriously, there is enough sample code out there that you should be
able to find some that does almost everything you want to do. Find
some good Mac programming resources on the web (I'll leave it to you
to find them. [Hint: search engines]), and peruse.

Also, Apple have large amounts of documentation online, and on
the shelves in bookstores. Use it.

Simon

-- 
________________________________________________________________
Simon Fraser                                  Santa Fe Institute
smfr@santafe.edu                             1399 Hyde Park Road
http://www.santafe.edu/~smfr/                 Santa Fe, NM 87501

+++++++++++++++++++++++++++

>From Russ Hendy <Russ@tui.co.uk>
Date: Fri, 20 Sep 1996 15:32:23 +0000
Organization: tui interactive media

Lance, 

  Apple's Developer CD's usually contain the fantastic 'TubeTest'
starter program. It instantiates a Window and draws two 'eyes' of
concentric circles on it. You can make the eyes hypnotic by running a
simple palette animation. 

Anyway, this is informal, well documented (commented) and the perfect
thing for starting you off. If you can't find it (I may have wrongly
named it), eMail me and I'll send you my CodeWarrior copy.  

Russ...

+++++++++++++++++++++++++++

>From bishopsys@aol.com (Matt Bishop)
Date: Sat, 21 Sep 1996 13:44:10 -0500
Organization: Bishop Shareware

In article <51sdg3$ge8@newsource.ihug.co.nz>, be@ihug.co.nz (Bryce Ewing) wrote:

>  Okay, I've done a lot of graphics programming on a PC compatible, and a
bit of 
> programming on a Mac, but not involving graphics. It appears that using 
> QuickDraw is the key to it but I'm having all sorts of problems getting it to 
> work.
> 
>  I havn't got much in the way of good documentation for QuickDraw so I don't 
> know the steps involved in opening a new window and drawing in it. I've tried 
> using NewCWindow but it crashed the whole machine. 
> 
>  Anyone have a few tips to get me going?
> 
>  Lance Ewing.


Look here:
http://www.ambrosiasw.com/alt.sources.mac/macintosh-c/

It has three chapters on programming quickdraw.

-Matt

+++++++++++++++++++++++++++

>From bishopsys@aol.com (Matt Bishop)
Date: Sat, 21 Sep 1996 13:44:10 -0500
Organization: Bishop Shareware

Reposting article removed by rogue canceller.

In article <51sdg3$ge8@newsource.ihug.co.nz>, be@ihug.co.nz (Bryce Ewing) wrote:

>  Okay, I've done a lot of graphics programming on a PC compatible, and a
bit of 
> programming on a Mac, but not involving graphics. It appears that using 
> QuickDraw is the key to it but I'm having all sorts of problems getting it to 
> work.
> 
>  I havn't got much in the way of good documentation for QuickDraw so I don't 
> know the steps involved in opening a new window and drawing in it. I've tried 
> using NewCWindow but it crashed the whole machine. 
> 
>  Anyone have a few tips to get me going?
> 
>  Lance Ewing.


Look here:
http://www.ambrosiasw.com/alt.sources.mac/macintosh-c/

It has three chapters on programming quickdraw.

-Matt

+++++++++++++++++++++++++++

>From dkj@apple.com (Dave Johnson)
Date: Tue, 24 Sep 1996 14:07:57 -0700
Organization: Apple Computer, Inc.

In article <R.bishopsys-2109961344100001@news.zippo.com>,
bishopsys@aol.com (Matt Bishop) wrote:

> Reposting article removed by rogue canceller.
> 
> In article <51sdg3$ge8@newsource.ihug.co.nz>, be@ihug.co.nz (Bryce
Ewing) wrote:
> 
> >  Okay, I've done a lot of graphics programming on a PC compatible, and a
> bit of 
> > programming on a Mac, but not involving graphics. It appears that using 
> > QuickDraw is the key to it but I'm having all sorts of problems
getting it to 
> > work.
> > 
> >  I havn't got much in the way of good documentation for QuickDraw so I
don't 
> > know the steps involved in opening a new window and drawing in it.
I've tried 
> > using NewCWindow but it crashed the whole machine. 
> > 
> >  Anyone have a few tips to get me going?
> > 
> >  Lance Ewing.
> 
> 
> Look here:
> http://www.ambrosiasw.com/alt.sources.mac/macintosh-c/
> 
> It has three chapters on programming quickdraw.
> 
> -Matt

Don't forget that all of Inside Macintosh is available online as well. Go
to <http://devworld.apple.com/dev/insidemac.shtml> and check it out.

Here's a tiny, crude snippet that will open a window and draw a couple
rectangles in it, if you prefer the quick and dirty approach. Please note
that this is NOT a complete Macintosh application, simply a demo of
NewCWindow and a couple drawing routines.

main()
{
   Rect     myRect;
   WindowPtr   myWindowPtr;
   
   // Init Mac toolbox
   FlushEvents (everyEvent - diskMask, 0 );
   MaxApplZone();
   InitGraf (&qd.thePort);
   InitFonts ();
   InitWindows ();
   InitMenus ();
   TEInit ();
   InitDialogs (nil);
   InitCursor ();

    // Create a 100 by 100 window, 20 pixels from the left of
    // the main screen, and 50 pixels from the top
    SetRect(&myRect, 20, 50, 120, 150);
    myWindowPtr = NewCWindow(
               nil,           // let system allocate storage space
               &myRect,       // size of window in global coordinates
               "\pA Window",     // window title
               true,          // window is visible
               documentProc,     // regular document window
               (WindowPtr)(-1),  // Put it in front of all other windows
               false,            // no close box, please
               0L );          // refcon is zero
    
    // Get ready to draw a rectangle
    SetRect(&myRect, 10, 10, 60, 60);
    SetPort(myWindowPtr); // not really necessary here, but a good habit
    ForeColor(blackColor);
    
    // Draw it
    PaintRect(&myRect);
    
    // Offset the rectangle and draw it again in a different color
    OffsetRect(&myRect, 30, 30);
    ForeColor(redColor);
    PaintRect(&myRect);
    
    // Wait for a mouse click, then quit
    while(!Button())
      ;
    
    // clean up
    DisposeWindow(myWindowPtr);
}


Dave Johnson
dkj@apple.com

---------------------------

>From jchauvin@netcom.com (John H. Chauvin)
Subject: Where are the programmers switches on the new PCI Macs?
Date: Sat, 21 Sep 1996 23:24:29 GMT
Organization: NETCOM On-line Communication Services (408 261-4700 guest)

I am planning on buying a new PowerMac 7600/132 to replace my dieing
Mac IIci. The IIci has two programmers switches on the front of the unit.
One lets me drop down into my debugger the other reset the computer. I
do not see these two switches on the 7600 unit. Did I miss something.

How do you drop down into MacBug? How do you reset the CPU?

Thanks,

John Chauvin
-- 
John H. Chauvin jchauvin@netcom.COM
Netcom - Online Communication Services San Jose, CA

+++++++++++++++++++++++++++

>From mh@primenet.com (Mark Hartman)
Date: 22 Sep 1996 07:12:10 -0700
Organization: Mark Hartman Computer Solutions

In article <jchauvinDy3vou.Cuq@netcom.com>, jchauvin@netcom.com (John H.
Chauvin) wrote:

>How do you drop down into MacBug?

Commmand-PowerOn.

>How do you reset the CPU?

Command-Control-PowerOn.
======================================================================
Mark Hartman Computer Solutions - specializing in all things Macintosh
   C  C++   4th Dimension   Networking   System design/architecture
tel +1(714)758.0640 -+- fax +1(714)999.5030 -+- e-mail mh@primenet.com
======================================================================
   Did you know that Win95 sold barely HALF of its sales forecast?

+++++++++++++++++++++++++++

>From nagle@netcom.com (John Nagle)
Date: Tue, 24 Sep 1996 04:27:13 GMT
Organization: NETCOM On-line Communication Services (408 261-4700 guest)

jchauvin@netcom.com (John H. Chauvin) writes:
>I am planning on buying a new PowerMac 7600/132 to replace my dieing
>Mac IIci. The IIci has two programmers switches on the front of the unit.
>One lets me drop down into my debugger the other reset the computer. I
>do not see these two switches on the 7600 unit. Did I miss something.

>How do you drop down into MacBug? How do you reset the CPU?

      There's some funny combination of several keys you have to press
all at once, but I can never remember what it is.  It's one of those
"oral tradition" Mac things, like understanding off-key startup chimes.

						John Nagle

+++++++++++++++++++++++++++

>From sch@unx.sas.com (Steve Holzworth)
Date: Mon, 23 Sep 1996 21:22:43 GMT
Organization: SAS Institute Inc.

jchauvin@netcom.com (John H. Chauvin) writes:

>I am planning on buying a new PowerMac 7600/132 to replace my dieing
>Mac IIci. The IIci has two programmers switches on the front of the unit.
>One lets me drop down into my debugger the other reset the computer. I
>do not see these two switches on the 7600 unit. Did I miss something.

>How do you drop down into MacBug? How do you reset the CPU?

For interrupt (i.e. - programmer's switch):
On most contemporary Macs, press and hold the "command" (Apple) key
then press the Power button (the one in the upper right with a triangle
on it).

For reset:
Same as above, but press and hold command and Control, then Power.
These are much more convenient for debugging than the little buttons on 
the box used to be.

If the machine gets into a really screwed up state, sometimes the above
will not work. Then you use the old-fashioned method: pull the plug :-)
(or turn it off, then on again).
--
Steve Holzworth
sch@unx.sas.com                    "Do not attribute to poor spelling
SAS Institute   x6872               That which is actually poor typing..."
Open Systems R&D  VMS/MAC/UNIX                            - me
Cary, N.C.

+++++++++++++++++++++++++++

>From parkec3@rpi.edu (Chris Parker)
Date: Tue, 24 Sep 1996 07:24:07 -0400
Organization: Rensselaer Polytechnic Institute, Troy NY, USA

In article <nagleDy7z1D.F5F@netcom.com>, nagle@netcom.com (John Nagle) wrote:

> jchauvin@netcom.com (John H. Chauvin) writes:
> >I am planning on buying a new PowerMac 7600/132 to replace my dieing
> >Mac IIci. The IIci has two programmers switches on the front of the unit.
> >One lets me drop down into my debugger the other reset the computer. I
> >do not see these two switches on the 7600 unit. Did I miss something.
> 
> >How do you drop down into MacBug? How do you reset the CPU?
> 
>       There's some funny combination of several keys you have to press
> all at once, but I can never remember what it is.  It's one of those
> "oral tradition" Mac things, like understanding off-key startup chimes.
> 
>                                                 John Nagle

Lo, come gather in the circle to learn the secret of dropping into MacsBug
on many new Macintoshes,... :^)

No, seriously.  You can kick into the debugger by hitting cmd-powerkey. 
This'll give you that oh-so-familiar (assuming you have it installed, of
course) screen-o-hex that you know and love.

- Chris

- -------------------------------------------------------------------
Check out the Design Conference Room Page!    http://www.dcr.rpi.edu/
- -------------------------------------------------------------------
Chris Parker                "If it wasn't hard, everyone would do it.
parkec3@rpi.edu                     The hard is what makes it great."
http://www.rpi.edu/~parkec3/     - Tom Hanks, _A_League_of_Their_Own_

---------------------------

>From MWRon@metrowerks.com (MW Ron)
Subject: [ANN] CW 10 is in the mail
Date: Wed, 18 Sep 1996 09:44:09 -0400
Organization: Metrowerks

CodeWarriors,

 CW 10 has been put in the mail and should be received world wide by
October 4th.  Hopefully you will have it this week or first of next week.
US updates were sent out via US Mail, International renewals were sent out
via DHL Mail Express and are in the local mail system now. New Purchases,
Bundles and Renewals were sent out via Airborne Express in the USA today
and should be arriving tomorrow morning.  International Distributors will
be sending CodeWarrior to their customers but they too should all be
arriving by the first week in October.


Please have a bit of patience but if you haven't received CW 10 by the
first week in October be sure to let me know.

Thanks,  We are very proud of this release and want you to have it as soon
as possible.

Ron

-- 
METROWERKS                   Ron Liechty
"Software at Work"    MWRon@metrowerks.com
http://www.metrowerks.com/about/people/rogues.html#mwron

+++++++++++++++++++++++++++

>From Michael Simpson <simpson@cts.com>
Date: 20 Sep 1996 06:31:55 GMT
Organization: CTS Network Services

Subject: [ANN] CW 10 is in the mail
>
>Please have a bit of patience but if you haven't received CW 10 by the
>first week in October be sure to let me know.
>
>Thanks,  We are very proud of this release and want you to have it as
soon
>as possible.

>Ron

Arnold spotted in San Diego, California Sept. 19, 1996!
On my birthday no less.  Thanks guys!

Michael
simpson@cts.com

+++++++++++++++++++++++++++

>From bd24@rz.uni-karlsruhe.de (Markus Imhof)
Date: Mon, 23 Sep 1996 14:33:57 +0100
Organization: IEKP Uni Karlsruhe

In article <51tdor$cal@optional.cts.com>, Michael Simpson
<simpson@cts.com> wrote:

....
> Arnold spotted in San Diego, California Sept. 19, 1996!
> On my birthday no less.  Thanks guys!
> 
....
Found it in the mail today (Karlsruhe, Germany, 23. Sept). Commendably
fast, if you include the time it must have taken the customs people to put
that stupid green sticker on :-)

Bye
 Markus

+++++++++++++++++++++++++++

>From mouser@zercom.net (Martin-Gilles Lavoie)
Date: 24 Sep 1996 12:30:15 GMT
Organization: Groupimage, inc.

In article <51tdor$cal@optional.cts.com>, Michael Simpson
<simpson@cts.com> wrote:

> >Please have a bit of patience but if you haven't received CW 10 by the
> >first week in October be sure to let me know.
[...]
> >Ron
> 
> Arnold spotted in San Diego, California Sept. 19, 1996!
> On my birthday no less.  Thanks guys!

Shoot!  My birthday is in June!

-- 
Martin-Gilles Lavoie
"The only trinary-state binary system known to live"
[Develop issue 24, page 4]

+++++++++++++++++++++++++++

>From nick@chem.ucla.edu ( nick.c @MT )
Date: Tue, 24 Sep 1996 11:25:13 -0800
Organization: MacTech Magazine



   
          Arnold Report: CW arrived in my Los Angeles box 9/23.
            (The CW 10 World Tour Begins! :-)

____Nicholas C. DeMello, Ph.D.________________________________________

  Online for MacTech Magazine, the Journal of Macintosh Programming
     http://www.MacTech.com/
                                       _/   _/  _/  _/_/_/   _/   _/  
  Chemistry: Nick@chem.UCLA.edu       _/_/ _/  _/  _/   _/  _/_/_/ 
    MacTech: Online@MacTech.com      _/ _/_/  _/  _/       _/ _/    
       http://www.chem.ucla.edu/~nick/   _/  _/   _/_/_/  _/   _/     

---------------------------

>From MultiQuest News <info@multiquest.com>
Subject: [ANN] OO Design Tool for Macintosh
Date: Sun, 22 Sep 1996 23:41:31 -0500
Organization: MultiQuest Corporation

=======================================================================
MultiQuest Announces S-CASE 3.0 for Macintosh
With Unified Modeling Language Support & Reverse Engineering
=======================================================================

Schaumburg, IL (September 23, 1996) - MultiQuest announced today the 
release of S-CASE 3.0 for Macintosh. This new version satisfies the
demand for Unified Modeling Language tools brought about by the
increasing popularity of this new method. The Unified Modeling 
Language, proposed by Grady Booch, Ivar Jacobson and Jim Rumbaugh
represents the unification of the Booch, Objectory and OMT methods.
S-CASE 3.0 enables analysts, designers and engineers to start using
this method right away, utilizing its potential to create simpler,
cleaner and more expressive models. 

S-CASE 3.0 also introduces scripted access to its metamodel. Users can 
now extract model elements using Tcl scripts, and output them in 
whatever format they wish, such as C++, Java, Smalltalk, SQL or
customized reports. In fact, the built in C++ code generator is written
entirely in Tcl, enabling users to customize the output to their coding
standards.

"The possibility to reach the model from scripts opens for instant 
documentation of our classes and for adapting the code generation 
process to our internal conventions," said Anders Igelstroem, Project
Manager at Innovativ Vision Image Systems.

S-CASE 3.0 provides C++ reverse engineering capability which is
extremely fast and easy to use. It also allows automatic layout of
parsed models for quick visualization and comprehension. Reverse
engineered models can be integrated with existing applications
or new projects.

S-CASE 3.0 promotes design reuse by introducing the concept of 
packages. Packages encapsulate all the elements needed for reuse.  
Users can create new models from "off-the-shelf" packages.

"S-CASE 3.0 provides us with tremendous flexibility in terms of how 
we go about refining and extending a design", said Frank Alviani, 
Senior Technical Coordinator at UOP. "It gives us the critical ability 
to reuse designs, which is where the ultimate payoff for reusability 
really lies."

Available immediately, S-CASE 3.0 for Macintosh lists at $495.
A save-limited evaluation version can be downloaded from
http://www.multiquest.com.

Founded in 1989, MultiQuest Corporation offers innovative tools and 
services to software developers worldwide. The company's mission is 
to consistently increase the productivity of software engineering 
teams by providing superior tools to analyze, design and implement 
complex software systems. For further information please call
(847) 397-9930, fax (847) 397-9931 or email to info@multiquest.com.

MultiQuest Corporation
1931 N Meacham Road, Suite 318
Schaumburg, IL 60173
Tel: (847) 397-9930
Fax: (847) 397-9931
Email: info@multiquest.com   
http://www.multiquest.com

MultiQuest(tm) and S-CASE(tm) are trademarks of MultiQuest Corporation.
All other trademarks are the property of their respective owners.

---------------------------

>From rcoleman@vrlab-www.redstone.army.mil (Rick)
Subject: [Q] Creating fog in QD3D
Date: 16 Sep 1996 13:51:01 GMT
Organization: VR

I am trying to create the effect of fog or haze that one sees as objects
get farther away from the view point.  In OpenGL this is created by
defining a "fog factor" which the renderer applies, based on an object's
distance from the eye point, when calculating the color of a pixel.  Is
there a way to do the same thing in QD3D?

Thanks in advance for your help.

+++++++++++++++++++++++++++

>From ackack@best.com (Daniel Jalkut)
Date: 22 Sep 1996 12:37:36 -0700
Organization: BEST Internet Communications

rcoleman@vrlab-www.redstone.army.mil (Rick) writes:

>I am trying to create the effect of fog or haze that one sees as objects
>get farther away from the view point.  In OpenGL this is created by
>defining a "fog factor" which the renderer applies, based on an object's
>distance from the eye point, when calculating the color of a pixel.  Is
>there a way to do the same thing in QD3D?

>Thanks in advance for your help.

Fog and clouds are not featured in the current QD3D, so you'll have to 
a. wait for them to be added
b. come up with your own

Perhaps someone with more practical experience with QD3D can suggest some
good tricks for you, but I recommend looking up the techniques in a
Computer Graphics Bible.

=
AckAck Software
ackack@best.com

+++++++++++++++++++++++++++

>From metals@rapidnet.com (Kevin Stone)
Date: 24 Sep 1996 12:11:17 -0600
Organization: RapidNet

: >I am trying to create the effect of fog or haze that one sees as objects
: >get farther away from the view point.  In OpenGL this is created by
: >defining a "fog factor" which the renderer applies, based on an object's
: >distance from the eye point, when calculating the color of a pixel.  Is
: >there a way to do the same thing in QD3D?

: >Thanks in advance for your help.

: Fog and clouds are not featured in the current QD3D, so you'll have to 
: a. wait for them to be added
: b. come up with your own

   Real "fog" can not easily be rendered unless you scan-convert and 
   render the polygons your self.  Because fog density is a factor of 
   distance, the Z coordinate of polygons should be interpolated during 
   scan-conversion to tell the scan-line renderer what amount of the 
   "fog" color should be applied to each pixel.  For speed concerns, the 
   fog colors should be stored in an array which stores all possible
   fog densities overlayed onto all possible colors.

   You could do some Fake fog by changing the color of individual 
   polygons slightly as they move into the distance, but I really doubt 
   it would look good.

Sincerly,
  Brian Stone
  Stone Enterprises
  metals@rapidnet.com
  

+++++++++++++++++++++++++++

>From metals@rapidnet.com (Kevin Stone)
Date: 24 Sep 1996 12:11:17 -0600
Organization: RapidNet

: >I am trying to create the effect of fog or haze that one sees as objects
: >get farther away from the view point.  In OpenGL this is created by
: >defining a "fog factor" which the renderer applies, based on an object's
: >distance from the eye point, when calculating the color of a pixel.  Is
: >there a way to do the same thing in QD3D?

: >Thanks in advance for your help.

: Fog and clouds are not featured in the current QD3D, so you'll have to 
: a. wait for them to be added
: b. come up with your own

   Real "fog" can not easily be rendered unless you scan-convert and 
   render the polygons your self.  Because fog density is a factor of 
   distance, the Z coordinate of polygons should be interpolated during 
   scan-conversion to tell the scan-line renderer what amount of the 
   "fog" color should be applied to each pixel.  For speed concerns, the 
   fog colors should be stored in an array which stores all possible
   fog densities overlayed onto all possible colors.

   You could do some Fake fog by changing the color of individual 
   polygons slightly as they move into the distance, but I really doubt 
   it would look good.

Sincerly,
  Brian Stone
  Stone Enterprises
  metals@rapidnet.com
  

---------------------------

>From g-kendall@nwu.edu (Brian Kendall)
Subject: [Q] Reading text from anywhere in a file (in C or C++)
Date: Mon, 23 Sep 1996 19:13:53 -0400
Organization: Programmer


Hi there!


I have an interesting problem. I'm writing a music program that lets you
change the size of your song on the fly. I decided the best way to do this
is to edit a text file. That way, I wouldn't have to worry about changing
the size of an array (which is hard) and running out of memory (okay,
okay, you could run out of disk space but it's more likely that someone
would have more disk space then memory).

To do this, I'd need to be able to access any point in a text file. That's
easy. But I also need to change part of a text file without changing the
entire thing.
I haven't found an IOStreams or stdio.h file that does this. So my question is:
how do you do it? 

My program isn't too speed dependant so I don't need to worry about things
taken a little bit of time. (But I can't use code that takes seconds to
compute. It adds up and becomes annoying to the user).

Any help about how to do this would be great.


Brian K.

‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹
"If you take cranberries and stew them like apple sauce, it tastes
much more like prunes then rhubarb does." ‹ Groucho Marx
‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹

+++++++++++++++++++++++++++

>From "Thomas L. Ferrell" <ferrelltl@ornl.gov>
Date: 24 Sep 1996 04:13:34 GMT
Organization: Oak Ridge National Lab

g-kendall@nwu.edu (Brian Kendall) wrote:
>
>Hi there!
>
>I have an interesting problem. I'm writing a music program that lets >you change the size of your song on the fly. I decided the be=
st way to >do this is to edit a text file. That way, I wouldn't have to worry >about changing the size of an array (which is hard) a=
nd running out of >memory (okay,okay, you could run out of disk space but it's more likely >that someone would have more disk space =
then memory).
>
>To do this, I'd need to be able to access any point in a text file. >That's easy. But I also need to change part of a text file wit=
hout >changing the entire thing.
>I haven't found an IOStreams or stdio.h file that does this. So my >question is: how do you do it? 
>
>My program isn't too speed dependant so I don't need to worry about >things taken a little bit of time. (But I can't use code that =
takes seconds to compute. It adds up and becomes annoying to the user).
>
>Any help about how to do this would be great.
>
>Brian K.

Hi Brian, It's hard to answer you without knowing a little bit more. Have you used fopen("foo.text","w"); in your work before? You n=
eed to open the file ,use fscanf, use the feof, and use fclose. If you haven't used these before, I'll send some snippets. It may be=
 useful to number your lines in your text file as a reference, tho this may not be necessary.
tom




+++++++++++++++++++++++++++

>From g-kendall@nwu.edu (Brian Kendall)
Date: Tue, 24 Sep 1996 16:31:12 -0400
Organization: Programmer

In article <527n5e$4p7@stc06.ctd.ornl.gov>, "Thomas L. Ferrell"
<ferrelltl@ornl.gov> wrote:

> g-kendall@nwu.edu (Brian Kendall) wrote:
> >
> >Hi there!
> >
> >I have an interesting problem. I'm writing a music program that lets
>you change the size of your song on the fly. I decided the be=
> st way to >do this is to edit a text file. That way, I wouldn't have to
worry >about changing the size of an array (which is hard) a=
> nd running out of >memory (okay,okay, you could run out of disk space
but it's more likely >that someone would have more disk space =
> then memory).
> >
> >To do this, I'd need to be able to access any point in a text file.
>That's easy. But I also need to change part of a text file wit=
> hout >changing the entire thing.
> >I haven't found an IOStreams or stdio.h file that does this. So my
>question is: how do you do it? 
> >
> >My program isn't too speed dependant so I don't need to worry about
>things taken a little bit of time. (But I can't use code that =
> takes seconds to compute. It adds up and becomes annoying to the user).
> >
> >Any help about how to do this would be great.
> >
> >Brian K.
> 
> Hi Brian, It's hard to answer you without knowing a little bit more.
Have you used fopen("foo.text","w"); in your work before? You n=
> eed to open the file ,use fscanf, use the feof, and use fclose. If you
haven't used these before, I'll send some snippets. It may be=
>  useful to number your lines in your text file as a reference, tho this
may not be necessary.
> tom

Accutally, I was using C++ IOStreams to open the file. If you think
regular C code will work well, then feel free to send my some snippets.

Brian K.

‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹
"If you take cranberries and stew them like apple sauce, it tastes
much more like prunes then rhubarb does." ‹ Groucho Marx
‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹‹

---------------------------

>From n@net.net
Subject: [Q] ShutDwnPower mystery?
Date: Sat, 21 Sep 1996 20:36:29 -0500
Organization: Frontier Internet Rochester N.Y. (716)-777-SURF

I'm writing a simple password program, mainly to learn C, and everything
works fine except for one thing. 

The way it works is that if an incorrect password is entered more than 3
times, the application saves the time and date of the intrusion attempt in
a resource, and then shuts off the machine's power with ShutDwnPower();.
While working on it, I've used ExitToShell() instead of ShutDwnPower() for
the obvious reason that I don't want to reboot my machine each time I test
it. The strange thing is that the built application works fine with the
call to ExitToShell--that is, it writes the resource of the intrusion
attempt, and then quits to the finder. When I build the application
substituting ShutDwn Power for ExitToShell, it shuts the power down,
allright, but it DOESN'T write to the application's resource file. Does
anyone know what's wrong?

            //ShutDwnPower();  //<-----uncomment this for application
            ExitToShell();
This works!

            ShutDwnPower();
This doesn't!!
This is absolutely the ONLY thing I changed!!
--Nicolo

+++++++++++++++++++++++++++

>From jude@smellycat.com (Jude Giampaolo)
Date: Sat, 21 Sep 1996 22:54:11 -0400
Organization: CyberDrugs

In article <n-2109962036290001@news.frontiernet.net>, n@net.net wrote:

> The way it works is that if an incorrect password is entered more than 3
> times, the application saves the time and date of the intrusion attempt in
> a resource, and then shuts off the machine's power with ShutDwnPower();.
> While working on it, I've used ExitToShell() instead of ShutDwnPower() for
> the obvious reason that I don't want to reboot my machine each time I test
> it. The strange thing is that the built application works fine with the
> call to ExitToShell--that is, it writes the resource of the intrusion
> attempt, and then quits to the finder. When I build the application
> substituting ShutDwn Power for ExitToShell, it shuts the power down,
> allright, but it DOESN'T write to the application's resource file. Does
> anyone know what's wrong?

Your're not flushing the changed resource to disk. You'll want to call
UpdateResource and then flush the disk cache. I don't remember how to do
this. I would consider sending the finder an event telling it to shut doen
as sinply cutting the power isn't nice on the filesystem.

-- 
Jude Charles Giampaolo         'There's not much to see actually,
jcg8@po.cwru.edu                we're inside a Chinese dragon...' 
jude@smellycat.com      http://prozac.cwru.edu/jude/JudeHome.html
Mac NFS serevr:   http://prozac.cwru.edu/jude/macnfs/Macnfsd.html

+++++++++++++++++++++++++++

>From grayowl@sover.net (Vinay Prabhakar)
Date: Sat, 21 Sep 1996 23:24:50 -0500
Organization: Gray Owl Software

In article <n-2109962036290001@news.frontiernet.net>, n@net.net wrote:

> I'm writing a simple password program, mainly to learn C, and everything
> works fine except for one thing. 
> 
> The way it works is that if an incorrect password is entered more than 3
> times, the application saves the time and date of the intrusion attempt in
> a resource, and then shuts off the machine's power with ShutDwnPower();.
> While working on it, I've used ExitToShell() instead of ShutDwnPower() for
> the obvious reason that I don't want to reboot my machine each time I test
> it. The strange thing is that the built application works fine with the
> call to ExitToShell--that is, it writes the resource of the intrusion
> attempt, and then quits to the finder. When I build the application
> substituting ShutDwn Power for ExitToShell, it shuts the power down,
> allright, but it DOESN'T write to the application's resource file. Does
> anyone know what's wrong?
> 
>             //ShutDwnPower();  //<-----uncomment this for application
>             ExitToShell();
> This works!
> 
>             ShutDwnPower();
> This doesn't!!
> This is absolutely the ONLY thing I changed!!
> --Nicolo

You say that you save the time and date of the intrusion attempt in a
resource- are you calling UpdateResFile on your app's resource fork after
doing the WriteResource? UpdateResFile forces a write to disk. 

Normally you don't _have_ to call UpdateResFile, because the resource fork
is updated when your application closes. (even via ExitToShell). However
calling ShutDwnPower is pretty much like pulling the plug- you can't
expect the data to be written out beforehand.

-- 
Vinay Prabhakar
Gray Owl Software

+++++++++++++++++++++++++++

>From jumplong@aol.com (Jump Long)
Date: 22 Sep 1996 13:52:54 -0400
Organization: America Online, Inc. (1-800-827-6364)

Nicolo wrote:
>I'm writing a simple password program, mainly to learn C, and
>everything works fine except for one thing. 
>
>The way it works is that if an incorrect password is entered
>more than 3 times, the application saves the time and date of
>the intrusion attempt in a resource, and then shuts off the
>machine's power with ShutDwnPower();. While working on it, I've
>used ExitToShell() instead of ShutDwnPower() for the obvious
>reason that I don't want to reboot my machine each time I test
>it. The strange thing is that the built application works fine
>with the call to ExitToShell--that is, it writes the resource of
>the intrusion attempt, and then quits to the finder. When I
>build the application substituting ShutDwn Power for
>ExitToShell, it shuts the power down, allright, but it DOESN'T
>write to the application's resource file. Does anyone know
>what's wrong?
>
>            //ShutDwnPower();  //<-----uncomment this for
>application
>            ExitToShell(); This works!
>
>            ShutDwnPower(); This doesn't!! This is absolutely
>the ONLY thing I changed!!

It sounds like you forgot to close your resource file. ExitToShell does
that for you (if you forgot).

- Jim Luther

+++++++++++++++++++++++++++

>From btcarey@primenet.com (Brent A. Carey)
Date: 22 Sep 1996 11:11:02 -0700
Organization: Primenet Services for the Internet

In article <n-2109962036290001@news.frontiernet.net>, n@net.net wrote:

> attempt, and then quits to the finder. When I build the application
> substituting ShutDwn Power for ExitToShell, it shuts the power down,
> allright, but it DOESN'T write to the application's resource file. Does

Perhaps you forgot to close your resource file after writing to it.  If
you haven't already, use CloseResFile() or UpdateResFile(), depending on
how you accessed the resource file.  If the application writes to it's own
resource file, UpdateResFile() is sufficient.  Otherwise, if you used
something like OpenResFile() to access an external resource file, then
CloseResFile() will do the trick.

I hope this helps.

Brent

+++++++++++++++++++++++++++

>From jude@smellycat.com (Jude Giampaolo)
Date: Sat, 21 Sep 1996 22:54:11 -0400
Organization: CyberDrugs

Reposting article removed by rogue canceller.

In article <n-2109962036290001@news.frontiernet.net>, n@net.net wrote:

> The way it works is that if an incorrect password is entered more than 3
> times, the application saves the time and date of the intrusion attempt in
> a resource, and then shuts off the machine's power with ShutDwnPower();.
> While working on it, I've used ExitToShell() instead of ShutDwnPower() for
> the obvious reason that I don't want to reboot my machine each time I test
> it. The strange thing is that the built application works fine with the
> call to ExitToShell--that is, it writes the resource of the intrusion
> attempt, and then quits to the finder. When I build the application
> substituting ShutDwn Power for ExitToShell, it shuts the power down,
> allright, but it DOESN'T write to the application's resource file. Does
> anyone know what's wrong?

Your're not flushing the changed resource to disk. You'll want to call
UpdateResource and then flush the disk cache. I don't remember how to do
this. I would consider sending the finder an event telling it to shut doen
as sinply cutting the power isn't nice on the filesystem.

-- 
Jude Charles Giampaolo         'There's not much to see actually,
jcg8@po.cwru.edu                we're inside a Chinese dragon...' 
jude@smellycat.com      http://prozac.cwru.edu/jude/JudeHome.html
Mac NFS serevr:   http://prozac.cwru.edu/jude/macnfs/Macnfsd.html

+++++++++++++++++++++++++++

>From Steve@emer.com (Steve Wilson)
Date: 23 Sep 1996 23:51:41 GMT
Organization: Emergent Behavior

In article <R.grayowl-2109962324500001@pm0a18.bratt.sover.net>,
grayowl@sover.net (Vinay Prabhakar) wrote:

> You say that you save the time and date of the intrusion attempt in a
> resource- are you calling UpdateResFile on your app's resource fork after
> doing the WriteResource? UpdateResFile forces a write to disk. 
> 
> Normally you don't _have_ to call UpdateResFile, because the resource fork
> is updated when your application closes. (even via ExitToShell). However
> calling ShutDwnPower is pretty much like pulling the plug- you can't
> expect the data to be written out beforehand.

You might try calling FlushVol as well.

Steve Wilson
Emergent Behavior
(415) 494-6763
Steve@emer.com
http://www.emer.com

+++++++++++++++++++++++++++

>From grayowl@sover.net (Vinay Prabhakar)
Date: Sat, 21 Sep 1996 23:24:50 -0500
Organization: Gray Owl Software

Reposting article removed by rogue canceller.

In article <n-2109962036290001@news.frontiernet.net>, n@net.net wrote:

> I'm writing a simple password program, mainly to learn C, and everything
> works fine except for one thing. 
> 
> The way it works is that if an incorrect password is entered more than 3
> times, the application saves the time and date of the intrusion attempt in
> a resource, and then shuts off the machine's power with ShutDwnPower();.
> While working on it, I've used ExitToShell() instead of ShutDwnPower() for
> the obvious reason that I don't want to reboot my machine each time I test
> it. The strange thing is that the built application works fine with the
> call to ExitToShell--that is, it writes the resource of the intrusion
> attempt, and then quits to the finder. When I build the application
> substituting ShutDwn Power for ExitToShell, it shuts the power down,
> allright, but it DOESN'T write to the application's resource file. Does
> anyone know what's wrong?
> 
>             //ShutDwnPower();  //<-----uncomment this for application
>             ExitToShell();
> This works!
> 
>             ShutDwnPower();
> This doesn't!!
> This is absolutely the ONLY thing I changed!!
> --Nicolo

You say that you save the time and date of the intrusion attempt in a
resource- are you calling UpdateResFile on your app's resource fork after
doing the WriteResource? UpdateResFile forces a write to disk. 

Normally you don't _have_ to call UpdateResFile, because the resource fork
is updated when your application closes. (even via ExitToShell). However
calling ShutDwnPower is pretty much like pulling the plug- you can't
expect the data to be written out beforehand.

-- 
Vinay Prabhakar
Gray Owl Software

---------------------------

>From dogger@msus1.msus.edu
Subject: [Q] Smooth text scrolling in a Rect
Date: 24 Sep 96 10:22:08 -0500
Organization: Minnesota State University System

Hello,

For the next segment of a game I am currently working on, I need to create
a text box that scrolls text that is generated from the current battle.
This is a role playing type game and when the player/character encounters
a monster a "battle window" [a standard mac window without a title bar] opens.
In this battle window are buttons for the user to push (like "Attack"), two 
areas for pictures of the character and for the monster, and an area that I
would like to contain randomly generated commentary on the battle. Such as,
"Sir Ralph swings at the orc, hitting him."

What is the best way to get text to scroll in this region, preferably smoothly?
My solution, which I haven't implemented yet, involves creating an offscreen
gWorld the same size as the region in the battle window. Sending the text via
DrawString() to the gWorld then CopyBits() back to the screen region. Before I
send the text to the gWorld I would have to have to copy within the gWorld
moving the text up. (So that there room for the new line of text.)

*Speed is unimportant since it is a turn based game.
*Coding in c.
*Using Codewarrior 9

Thanks, in advance, for any and all help.

Fellow Mac Programmer (who's just starting),
-Tone.

+++++++++++++++++++++++++++

>From nargun@ix.netcom.com (Trevor Powell)
Date: Tue, 24 Sep 1996 11:02:31 -0800
Organization: Vulpine Software

In article <1996Sep24.102208.1@msus1.msus.edu>, dogger@msus1.msus.edu wrote:

> What is the best way to get text to scroll in this region, preferably
smoothly?
> My solution, which I haven't implemented yet, involves creating an offscreen
> gWorld the same size as the region in the battle window. Sending the text via
> DrawString() to the gWorld then CopyBits() back to the screen region. Before I
> send the text to the gWorld I would have to have to copy within the gWorld
> moving the text up. (So that there room for the new line of text.)

Better solution is to use an offscreen GWorld that's about one line taller
than your text window.  Draw your text into the 'bottom line' of the
offscreen GWorld, and then copybits the top part of the GWorld into your
screen region (that is, copybits the whole GWorld above the area you drew
your text into).. then (depending on whether you want the text to scroll
synchronously or asynchronously), lower the rectangle you use for your
offscreen CopyBits routine by one or two pixels, and CopyBits again.  And
again.  And again. (Either one immediately after the other, or with event
loops between them, if you want the scrolling asynchronous)  Continue
until the text is fully visible in your scrolling text area.  At this
time, move everything in the offscreen buffer up one text line
(ScrollRect() is probably the easiest way to do this, though CopyBits()
would work as well)...  repeat, when you need to enter another line of
text.

Hope this helps!

Trevor

---------------------------

>From mbach25631@aol.com (MBach25631)
Subject: [Q] Sound Manager 3.2 docs needed
Date: 22 Sep 1996 12:03:41 -0400
Organization: America Online, Inc. (1-800-827-6364)

Hello all!

I'm looking for the SoundManager 3.2 API docs. Couldn't
find them yet. Any help greatly appreciated.


TIA
Martin Bach
MBach25631@aol.com

+++++++++++++++++++++++++++

>From "Jae Ho Chang" <jaeho@xs4all.nl>
Date: 23 Sep 96 20:26:43 +0200
Organization: XS4ALL, networking for the masses


--Cyberdog-AltBoundary-0001D04C
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

>I'm looking for the SoundManager 3.2 API docs.

Hi,

I found SoundManager 3.2 in Developer CD which _should_ contain the
latest things, but they included the release note of version 3.1. No
doc for 3.2 ... :-|

Jae Ho Chang :-)
--
Check out the amazing note utility FinderNote at
<http://www.xs4all.nl/~jaeho/FinderNote>
eMusicas Home Page <http://www.xs4all.nl/~jaeho/>

- Let's think of the earth -



--Cyberdog-AltBoundary-0001D04C
Content-Type: multipart/mixed; boundary="Cyberdog-MixedBoundary-0001D04C"
Content-Transfer-Encoding: 7bit


--Cyberdog-MixedBoundary-0001D04C
Content-Type: text/enriched; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<SMALLER><SMALLER><X-FONTSIZE><PARAM>9</PARAM><FONTFAMILY><PARAM>Geneva=
</PARAM>>I'm looking for the SoundManager 3.2 API
docs.</FONTFAMILY></X-FONTSIZE></SMALLER></SMALLER><SMALLER><SMALLER><X=
-FONTSIZE><PARAM>9</PARAM><FONTFAMILY><PARAM>Geneva</PARAM>


Hi,


I found SoundManager 3.2 in Developer CD which _should_ contain the
latest things, but they included the release note of version 3.1. No
doc for 3.2 ... :-|


Jae Ho Chang :-)

--

Check out the amazing note utility FinderNote at
<<</FONTFAMILY></X-FONTSIZE></SMALLER></SMALLER><COLOR><PARAM>0000,2666=
,F0A3</PARAM><SMALLER><SMALLER><X-FONTSIZE><PARAM>9</PARAM><FONTFAMILY>=
<PARAM>Geneva</PARAM>http://www.xs4all.nl/~jaeho/FinderNote</FONTFAMILY=
></X-FONTSIZE></SMALLER></SMALLER></COLOR><SMALLER><SMALLER><X-FONTSIZE=
><PARAM>9</PARAM><FONTFAMILY><PARAM>Geneva</PARAM>>

eMusicas Home Page <<</FONTFAMILY></X-FONTSIZE></SMALLER></SMALLER><COL=
OR><PARAM>0000,2666,F0A3</PARAM><SMALLER><SMALLER><X-FONTSIZE><PARAM>9<=
/PARAM><FONTFAMILY><PARAM>Geneva</PARAM>http://www.xs4all.nl/~jaeho/</F=
ONTFAMILY></X-FONTSIZE></SMALLER></SMALLER></COLOR><SMALLER><SMALLER><X=
-FONTSIZE><PARAM>9</PARAM><FONTFAMILY><PARAM>Geneva</PARAM>>


- Let's think of the earth -

</FONTFAMILY></X-FONTSIZE></SMALLER></SMALLER>
--Cyberdog-MixedBoundary-0001D04C--

--Cyberdog-AltBoundary-0001D04C--


+++++++++++++++++++++++++++

>From ajlloyd@kagi.com (Adam Lloyd)
Date: Tue, 24 Sep 1996 18:44:26 +0100
Organization: the trestle table, noisily

Anyone noticed how Cyberdog postings look a right mess under anything other
than Cyberdog? Funny old world, really.

Adam.

PS: anyone got MkLinux DR2's X11 working on a Power100?

-- 
Adam Lloyd
  Red Herring Software



---------------------------

>From helmut.kalb@uibk.ac.at (Helmut Kalb)
Subject: [Q]: System Extension Trigger
Date: 18 Sep 1996 07:46:01 GMT
Organization: University of Innsbruck, Austria

Hello, everybody,

I'm about to install a system extension, which should perform the 
following action:
Whenever the user presses the mouse button in the upper right corner 
of the screen a window should appear and disappear again when the 
button is released.
I already wrote the function which works fine as stand-alone 
application. Then I wrote a system extension which loads the 
functions code into the system heap at startup time, but now arises 
the following problem:
How can I tell the system, that this function (which shows the 
window) has to be executed whenever the user presses the button in 
the upper right corner of the screen?
Do I have to install a VBL-task?

Any help is appreciated. Thank You!

- --------------------------------------------------------
Helmut Kalb                        Tel.: ++43/512/507 4231
University of Innsbruck            Fax : ++43/512/507 2884
A-6020 Innsbruck                   OMA : helmut.kalb@uibk.ac.at
Innrain 52
Austria


+++++++++++++++++++++++++++

>From mh@primenet.com (Mark Hartman)
Date: 18 Sep 1996 08:42:02 -0700
Organization: Mark Hartman Computer Solutions

In article <51o9bp$nr7@dm2.uibk.ac.at>, helmut.kalb@uibk.ac.at (Helmut
Kalb) wrote:

>Hello, everybody,
>
>I'm about to install a system extension, which should perform the 
>following action:
>Whenever the user presses the mouse button in the upper right corner 
>of the screen a window should appear and disappear again when the 
>button is released.
>I already wrote the function which works fine as stand-alone 
>application. Then I wrote a system extension which loads the 
>functions code into the system heap at startup time, but now arises 
>the following problem:
>How can I tell the system, that this function (which shows the 
>window) has to be executed whenever the user presses the button in 
>the upper right corner of the screen?

Sounds like a job for a jGNEfilter.
============================================================================
   Mark Hartman Computer Solutions - specializing in all things Macintosh
      C  C++   4th Dimension   Networking   System design/architecture
   tel +1(714)758.0640 -+- fax +1(714)999.5030 -+- e-mail mh@primenet.com
============================================================================
One useless man is a disgrace; two are a law firm; three or more, a Congress

+++++++++++++++++++++++++++

>From test@netmanage.com
Date: Mon, 23 Sep 96 13:21:18 +0000
Organization: PSI Public Usenet Link

You'll need a JGNE filter. Check out Extension Shell by Dair Grant - it has 
working examples in CW how to do this. It's fairly easy.
Also, don't forget that since you're in the INIT, your resource file is closed. 
You'll need to store your res file's refNum in a global and when your code 
executes open your resFile and load the resource (WIND , DLOG, whatever). Then 
close your res file. 

HTH, Andy


>Hello, everybody,
>
>I'm about to install a system extension, which should perform the 
>following action:
>Whenever the user presses the mouse button in the upper right corner 
>of the screen a window should appear and disappear again when the 
>button is released.
>I already wrote the function which works fine as stand-alone 
>application. Then I wrote a system extension which loads the 
>functions code into the system heap at startup time, but now arises 
>the following problem:
>How can I tell the system, that this function (which shows the 
>window) has to be executed whenever the user presses the button in 
>the upper right corner of the screen?
>Do I have to install a VBL-task?
>
>Any help is appreciated. Thank You!
>
>----------------------------------------------------------
>Helmut Kalb                        Tel.: ++43/512/507 4231
>University of Innsbruck            Fax : ++43/512/507 2884
>A-6020 Innsbruck                   OMA : helmut.kalb@uibk.ac.at
>Innrain 52
>Austria
>



+++++++++++++++++++++++++++

>From test@netmanage.com
Date: Mon, 23 Sep 96 13:21:18 +0000
Organization: PSI Public Usenet Link

You'll need a JGNE filter. Check out Extension Shell by Dair Grant - it has 
working examples in CW how to do this. It's fairly easy.
Also, don't forget that since you're in the INIT, your resource file is closed. 
You'll need to store your res file's refNum in a global and when your code 
executes open your resFile and load the resource (WIND , DLOG, whatever). Then 
close your res file. 

HTH, Andy


>Hello, everybody,
>
>I'm about to install a system extension, which should perform the 
>following action:
>Whenever the user presses the mouse button in the upper right corner 
>of the screen a window should appear and disappear again when the 
>button is released.
>I already wrote the function which works fine as stand-alone 
>application. Then I wrote a system extension which loads the 
>functions code into the system heap at startup time, but now arises 
>the following problem:
>How can I tell the system, that this function (which shows the 
>window) has to be executed whenever the user presses the button in 
>the upper right corner of the screen?
>Do I have to install a VBL-task?
>
>Any help is appreciated. Thank You!
>
>----------------------------------------------------------
>Helmut Kalb                        Tel.: ++43/512/507 4231
>University of Innsbruck            Fax : ++43/512/507 2884
>A-6020 Innsbruck                   OMA : helmut.kalb@uibk.ac.at
>Innrain 52
>Austria
>



---------------------------

>From lantos@ecf.toronto.edu (David Lantos)
Subject: help with malloc() needed
Date: Fri, 20 Sep 1996 03:05:10 GMT
Organization: University of Toronto, Engineering Computing Facility

It's a very short program; here's the code:

____________________

#include <stdio.h>

struct node {
	char *name;
	char *id;
	int grade;
	struct node *left, *right;
};

main()
{
	struct node	*root;

	root = (struct node*)malloc( sizeof( struct node ) );
}

_____________________

that's it!  Why is it that I can't use malloc()?  When using the debugger
(I'm using Symantec 7.0), right after 'root' is declared, all of the 
members of the record seem to have memory allocated correctly.  After the
call to malloc(), all of the members have "bus error" written next to 
them.  Do I have to use some mac-specific Toolbox routine instead of 
malloc()?  Or do I not have to call malloc at all, in which case, how
would I allocate memory for the 'left' and 'right' members of 'root' ?
(when I first declare 'root', the members 'left' and 'right' are
initialized with NULL values).  Help!!!!  I've had this problem with 
malloc before; when I compile stuff with gcc at school, malloc() doesn't
give me any trouble (UNIX is the OS), but when I try to compile code that
contains malloc() on my mac, I get crashes and "bus errors".  AAHHHHH!!!!!

						frustrated,

						- Dave 





+++++++++++++++++++++++++++

>From quinlan@sfu.ca (Brian Quinlan)
Date: 20 Sep 1996 19:43:44 GMT
Organization: Simon Fraser University

All I can think of is that your not including stdlib in your program.


--

Brian Quinlan  "Never ask what sort of computer a guy drives. If he's a Mac
quinlan@sfu.ca  user, he'll tell you. If not, why embarrass him?" - Tom Clancy

+++++++++++++++++++++++++++

>From gregj@europa.com (Greg Jorgensen)
Date: Sun, 22 Sep 1996 12:44:06 -0800
Organization: Europa Communications, Inc, Portland Oregon USA

In article <Dy0GKM.Dpz@ecf.toronto.edu>, lantos@ecf.toronto.edu (David
Lantos) wrote:

>#include <stdio.h>
>
>struct node {
>        char *name;
>        char *id;
>        int grade;
>        struct node *left, *right;
>};
>
>main()
>{
>        struct node     *root;
>
>        root = (struct node*)malloc( sizeof( struct node ) );
>}

>that's it!  Why is it that I can't use malloc()?  When using the debugger
>(I'm using Symantec 7.0), right after 'root' is declared, all of the 
>members of the record seem to have memory allocated correctly.  After the
>call to malloc(), all of the members have "bus error" written next to 
>them. [...] when I try to compile code that
>contains malloc() on my mac, I get crashes and "bus errors".  AAHHHHH!!!!!

You need to get the correct prototype for malloc by including the correct
header file:

#include <stdlib.h>

Otherwise your code looks ok and malloc does work. If you turn the C++
compiler on you can use "new" and a little cleaner syntax for defining the
struct pointers.

-- 
Greg Jorgensen - Portland, Oregon, USA - gregj@europa.com

"I tell you, we are here on Earth to fart around, and don't let anyone tell you any different." -- Kurt Vonnegut

---------------------------

>From geheniau@inter.nl.net (geheniau)
Subject: mac 512k ed system HELP!!!
Date: 20 Sep 1996 22:52:09 GMT
Organization: Inter.NL.net, The Internet Provider in The Netherlands.

I have a very old mac 512k ED.

I want to boot it how...

But i don't have a system disk (i think I need system 1.1 or 6.0)

Where can I get these old mac system from the net


Thanks very much for replying !!!!

Job

-- 
J.J. Geheniau
http://www.inter.nl.net/users/J.Geheniau
email:  geheniau@inter.nl.net

Knowledge is Power

+++++++++++++++++++++++++++

>From MikeG11@Sprynet.com (Mike Glass)
Date: Fri, 20 Sep 1996 21:30:29 -0400
Organization: MG Enterprises Ltd.

In article <geheniau-2109960100320001@ztm99-7.zoetermeer.nl.net>,
geheniau@inter.nl.net (geheniau) wrote:

=->I have a very old mac 512k ED.
=->
=->I want to boot it how...
=->
=->But i don't have a system disk (i think I need system 1.1 or 6.0)
=->
=->Where can I get these old mac system from the net
=->
=->
=->Thanks very much for replying !!!!
=->
=->Job

Old versions of system software are available via AOL in the INFO FROM
APPLE forum. You can get system 6.0.? there....I think. :)

-- 
Ýhé ¶håñÝøm øŸ Ýhé îñÝé®ñéÝ î§ Ýhé®é­îñ§îé ¥øü® mîñ...

+++++++++++++++++++++++++++

>From bparker@nwdc.com (bill parker)
Date: Sat, 21 Sep 1996 23:09:54 GMT
Organization: Capitol Internet Services + MD, DC, No.VA + info@Capitol.Net

geheniau@inter.nl.net (geheniau) wrote:

>I have a very old mac 512k ED.

>I want to boot it how...

>But i don't have a system disk (i think I need system 1.1 or 6.0)

>Where can I get these old mac system from the net


>Thanks very much for replying !!!!

>Job

>-- 
>J.J. Geheniau
>http://www.inter.nl.net/users/J.Geheniau
>email:  geheniau@inter.nl.net

>Knowledge is Power
 search for mac user groups on the web initialize the disk to 400k mfs
sys 6.08 should work



+++++++++++++++++++++++++++

>From mayhem@buffnet.net (Mothermay)
Date: Sun, 22 Sep 1996 08:36:22 -0500
Organization: BuffNET

In article <MikeG11-2009962130310001@hd28-162.compuserve.com>,
MikeG11@Sprynet.com (Mike Glass) wrote:

> In article <geheniau-2109960100320001@ztm99-7.zoetermeer.nl.net>,
> geheniau@inter.nl.net (geheniau) wrote:
> 
> =->I have a very old mac 512k ED.
> =->
> =->I want to boot it how...
> =->
> =->But i don't have a system disk (i think I need system 1.1 or 6.0)
> =->
> =->Where can I get these old mac system from the net
> =->
> =->
> =->Thanks very much for replying !!!!
> =->
> =->Job
> 
> Old versions of system software are available via AOL in the INFO FROM
> APPLE forum. You can get system 6.0.? there....I think. :)
> 
> -- 
> Ýhé ¶håñÝøm øŸ Ýhé îñÝé®ñéÝ î§ Ýhé®é­îñ§îé ¥øü® mîñ...


I've seen SYS 5.0 out there at some of the university based shareware
sites, nothing older. Sys 3.0 is best suited for the 512k (Fat) Mac. The
only place I've seen it is for sale ($15.00) at Sun Remarketing.

Good luck,
Craig

-- 
"Improvement makes strait roads; but the crooked roads without Improvement are the roads of genius."  --Blake

Mothermay

+++++++++++++++++++++++++++

>From cjs@vaxxine.com (CJ Shortland)
Date: 22 Sep 1996 23:39:06 GMT
Organization: Vaxxine Public Internet Access 

In article <mayhem-2209960836230001@dppp33.buffnet.net>,
mayhem@buffnet.net (Mothermay) wrote:

> In article <MikeG11-2009962130310001@hd28-162.compuserve.com>,
> MikeG11@Sprynet.com (Mike Glass) wrote:
> 
> > In article <geheniau-2109960100320001@ztm99-7.zoetermeer.nl.net>,
> > geheniau@inter.nl.net (geheniau) wrote:
> > 
> > =->I have a very old mac 512k ED.
> > =->
> > =->I want to boot it how...
> > =->
> > =->But i don't have a system disk (i think I need system 1.1 or 6.0)
> > =->
> > =->Where can I get these old mac system from the net
> > =->
> > =->
> > =->Thanks very much for replying !!!!
> > =->
> > =->Job
> > 
> > Old versions of system software are available via AOL in the INFO FROM
> > APPLE forum. You can get system 6.0.? there....I think. :)
> > 
> > -- 
> > Ýhé ¶håñÝøm øŸ Ýhé îñÝé®ñéÝ î§ Ýhé®é­îñ§îé ¥øü® mîñ...
> 
> 
> I've seen SYS 5.0 out there at some of the university based shareware
> sites, nothing older. Sys 3.0 is best suited for the 512k (Fat) Mac. The
> only place I've seen it is for sale ($15.00) at Sun Remarketing.
> 
> Good luck,
> Craig
> 
> -- 
> "Improvement makes strait roads; but the crooked roads without
Improvement are the roads of genius."  --Blake
> 
> Mothermay
I needed to get the startup disks for a 512K machine for a friend at work.
I called Apple Canada and they said they have all the startup disks for
all the old machines and would mail me one for free!! Can't beat that.

-- 
CJ Shortland
cjs@vaxxine.com


---------------------------

End of C.S.M.P. Digest
**********************
